#include "modbuscontrol.h"

ModbusControl *ModbusControl::m_instance = nullptr;
QMutex ModbusControl::m_mutex;

ModbusControl *ModbusControl::getInstance(QObject *parent)
{
    if(!m_instance)
    {
        QMutexLocker locker(&m_mutex);
        if(!m_instance)
        {
            m_instance = new ModbusControl(parent);
        }
    }

    return m_instance;
}

ModbusControl::ModbusControl(QObject *parent)
    : QObject{parent}
{
    m_Modbus = new QModbusRtuSerialClient(this);
    m_Timer = new QTimer(this);
    m_Timer->setInterval(250);
    // m_Timer->start();

    QObject::connect(m_Modbus,&QModbusRtuSerialClient::stateChanged,this,[=]{
        if(m_Modbus->state() == QModbusDevice::ConnectedState)
        {
            setPLC_ConnectState(true);
            m_Timer->start();
        }
    });

    // 轮询PLC 参数槽函数
    QObject::connect(m_Timer,
                     &QTimer::timeout,
                     this,
                     &ModbusControl::read_PLC_Parameters);

    // 物理断开连接检测槽函数
    QObject::connect(m_Modbus,
                     &QModbusClient::errorOccurred,
                     this,
                     &ModbusControl::errorOccurredSlots);

    // 读取写入  32位寄存器的当前值
    QObject::connect(this,
                     &ModbusControl::write_Hold_Registers_32_Over_Signal,
                     this,
                     &ModbusControl::on_Hold_Registers_32_Over_Read_Slots);

    // 读取写入  16位寄存器的当前值
    QObject::connect(this,
                     &ModbusControl::write_Hold_Registers_16_Over_Signal,
                     this,
                     &ModbusControl::on_Hold_Registers_16_Over_Read_Slots);
}


ModbusControl::~ModbusControl()
{

}

void ModbusControl::read_PLC_Parameters()
{
    // 当前请求数 7

    // 读取PLC版本号
    read_PLC_Vertion_Hold();
    // 读取PLC当前位置
    read_Mechine_Current_Location();
    // 读取当前角码加工段数和角码累计加工段数
    read_Current_Corner_Segments_Worked_Corner_Segments();
    // 读取IO监控
    read_IO_Monitor_DiscreteInputs();
    // 读取线圈
    read_Coils();
    // 读取 二维码料单 已加工数量
    read_QR_Code_Process_Lists_Worked_Count();
    // 读取  本地料单 已加工数量
    read_Local_Material_List_Worked_Count();


}

void ModbusControl::errorOccurredSlots(QModbusDevice::Error error)
{
    if(error != QModbusDevice::NoError)
    {
        setPLC_ConnectState(false);
        m_Timer->stop();
    }
}

void ModbusControl::on_Hold_Registers_32_Over_Read_Slots(int address)
{

    qDebug()<<"当前需要读取的寄存器的地址: "<<address;

    if (!m_Modbus || m_Modbus->state() != QModbusDevice::ConnectedState) {
        qDebug() << "error : disConnectedState";
        return;
    }

    // 使用QTimer::singleShot实现100ms延迟执行
    QTimer::singleShot(100, this, [this, address]() {
        // 读取保持寄存器寄存器
        QModbusDataUnit readUnit(QModbusDataUnit::HoldingRegisters, address, 2);

        if (QModbusReply* reply = m_Modbus->sendReadRequest(readUnit, 1)) {
            if (!reply->isFinished()) {
                connect(reply, &QModbusReply::finished, this,[this, reply, address]() {
                    if (reply->error() == QModbusDevice::NoError) {
                        const QModbusDataUnit unit = reply->result();
                        const uint16_t high = unit.value(1);
                        const uint16_t low = unit.value(0);

                        // 转换成浮点数
                        QString valueStr = QString::number(combinationToFloat(high, low), 'f', 2);

                        qDebug() << "读取保持寄存器32成功:" << "地址:" << address << "值:" << valueStr;

                        // 根据地址给对应的Q_PROPERTY赋值
                        switch(address) {
                        case 212:{
                            setMaterialLength_NormalProcess(valueStr);
                            break;
                        }
                        case 214:{
                            setMaterialHeight_NormalProcess(valueStr);
                            break;
                        }
                        case 226:{
                            setExtraLong_MaterialLength(valueStr);
                            break;
                        }
                        case 1382:{
                            setExtraLong_MaterialLength_Compensate(valueStr);
                            break;
                        }
                        case 224:{
                            setExtraShort_MaterialLength(valueStr);
                            break;
                        }
                        case 1380:{
                            setExtraShort_Compensate(valueStr);
                            break;
                        }
                        case 1390:{
                            setPull_Back_Distance(valueStr);
                            break;
                        }
                        case 1276:{
                            setCorner_MaterialLength(valueStr);
                            break;
                        }
                        case 1272:{
                            setCorner_Length(valueStr);
                            break;
                        }
                        case 1274:{
                            setCorner_Knife_Compensate(valueStr);
                            break;
                        }
                        case 1292:{
                            setCorner_MaterialLength_Min(valueStr);
                            break;
                        }
                        case 282:{
                            setHandle_Location(valueStr);
                            break;
                        }
                        case 378:{
                            setHandle_Location_Compensate(valueStr);
                            break;
                        }
                        case 284:{
                            setHandle_Width(valueStr);
                            break;
                        }
                        case 1600:{
                            setQR_List_CutLength_1(valueStr);
                            break;
                        }
                        case 1602:{
                            setQR_List_CutLength_2(valueStr);
                            break;
                        }
                        case 1604:{
                            setQR_List_CutLength_3(valueStr);
                            break;
                        }
                        case 1606:{
                            setQR_List_CutLength_4(valueStr);
                            break;
                        }
                        case 1608:{
                            setQR_List_CutLength_5(valueStr);
                            break;
                        }
                        case 1610:{
                            setQR_List_CutLength_6(valueStr);
                            break;
                        }
                        case 1612:{
                            setQR_List_CutLength_7(valueStr);
                            break;
                        }
                        case 1614:{
                            setQR_List_CutLength_8(valueStr);
                            break;
                        }
                        case 1616:{
                            setQR_List_CutLength_9(valueStr);
                            break;
                        }
                        case 1618:{
                            setQR_List_CutLength_10(valueStr);
                            break;
                        }
                        case 1620:{
                            setQR_List_CutLength_11(valueStr);
                            break;
                        }
                        case 1622:{
                            setQR_List_CutLength_12(valueStr);
                            break;
                        }
                        case 1624:{
                            setQR_List_CutLength_13(valueStr);
                            break;
                        }
                        case 1626:{
                            setQR_List_CutLength_14(valueStr);
                            break;
                        }
                        case 1628:{
                            setQR_List_CutLength_15(valueStr);
                            break;
                        }
                        case 1630:{
                            setQR_List_CutLength_16(valueStr);
                            break;
                        }
                        case 1632:{
                            setQR_List_CutLength_17(valueStr);
                            break;
                        }
                        case 1634:{
                            setQR_List_CutLength_18(valueStr);
                            break;
                        }
                        case 1636:{
                            setQR_List_CutLength_19(valueStr);
                            break;
                        }
                        case 1638:{
                            setQR_List_CutLength_20(valueStr);
                            break;
                        }
                        case 1392:{
                            setManual_Location_Speed(valueStr);
                            break;
                        }
                        case 232:{
                            setLeftSaws_OutTime(valueStr);
                            break;
                        }
                        case 670:{
                            setLeftSaws_45_Compensate(valueStr);
                            break;
                        }
                        case 1288:{
                            setMaterial_Height_Observe_Time(valueStr);
                            break;
                        }
                        case 1290:{
                            setMaterial_Height_Ruler_Scale(valueStr);
                            break;
                        }
                        case 680:{
                            setMaterial_Height_Observe_Base(valueStr);
                            break;
                        }
                        case 1280:{
                            setImpactActiveTime(valueStr);
                            break;
                        }
                        case 206:{
                            setAuto_Location_Speed(valueStr);
                            break;
                        }
                        case 234:{
                            setRightSaws_OutTime(valueStr);
                            break;
                        }
                        case 672:{
                            setRightSaws_45_Compensate(valueStr);
                            break;
                        }
                        case 1394:{
                            setSafe_Distance_45(valueStr);
                            break;
                        }
                        case 238:{
                            setElectric_Valve_Power_Off_Time(valueStr);
                            break;
                        }
                        case 200:{
                            setPer_Rotation_Pulse(valueStr);
                            break;
                        }
                        case 216:{
                            setMax_Cut_Length(valueStr);
                            break;
                        }
                        case 220:{
                            setFind_Zero_High_Speed(valueStr);
                            break;
                        }
                        case 1278:{
                            setBrake_Open_Time(valueStr);
                            break;
                        }
                        case 202:{
                            setPer_Rotation_Distance(valueStr);
                            break;
                        }
                        case 218:{
                            setReverse_Soft_Limit(valueStr);
                            break;
                        }
                        case 222:{
                            setFind_Zero_Low_Speed(valueStr);
                            break;
                        }
                        case 612:{
                            setBracket_Safe_Distance(valueStr);
                            break;
                        }
                        case 1294:{
                            setBracket_Front_Location(valueStr);
                            break;
                        }
                        case 296:{
                            setBracket_Mid_Min(valueStr);
                            break;
                        }
                        case 1296:{
                            setBracket_Mid_Max(valueStr);
                            break;
                        }
                        case 1298:{
                            setBracket_Back_Location(valueStr);
                            break;
                        }
                        case 1302:{
                            setLocation_Compensate_1(valueStr);
                            break;
                        }
                        case 1304:{
                            setLocation_Compensate_2(valueStr);
                            break;
                        }
                        case 1306:{
                            setLocation_Compensate_3(valueStr);
                            break;
                        }
                        case 1308:{
                            setLocation_Compensate_4(valueStr);
                            break;
                        }
                        case 1310:{
                            setLocation_Compensate_5(valueStr);
                            break;
                        }
                        case 1312:{
                            setLocation_Compensate_6(valueStr);
                            break;
                        }
                        case 1314:{
                            setLocation_Compensate_7(valueStr);
                            break;
                        }
                        case 1316:{
                            setLocation_Compensate_8(valueStr);
                            break;
                        }
                        case 1318:{
                            setLocation_Compensate_9(valueStr);
                            break;
                        }
                        case 1320:{
                            setLocation_Compensate_10(valueStr);
                            break;
                        }
                        case 1322:{
                            setLocation_Compensate_11(valueStr);
                            break;
                        }
                        case 1324:{
                            setLocation_Compensate_12(valueStr);
                            break;
                        }
                        case 1326:{
                            setLocation_Compensate_13(valueStr);
                            break;
                        }
                        case 1328:{
                            setLocation_Compensate_14(valueStr);
                            break;
                        }
                        case 1330:{
                            setLocation_Compensate_15(valueStr);
                            break;
                        }
                        case 1332:{
                            setLocation_Compensate_16(valueStr);
                            break;
                        }
                        case 1334:{
                            setLocation_Compensate_17(valueStr);
                            break;
                        }
                        case 1336:{
                            setLocation_Compensate_18(valueStr);
                            break;
                        }
                        case 1338:{
                            setLocation_Compensate_19(valueStr);
                            break;
                        }
                        case 1340:{
                            setLocation_Compensate_20(valueStr);
                            break;
                        }
                        case 1342:{
                            setLocation_Compensate_21(valueStr);
                            break;
                        }
                        case 1344:{
                            setLocation_Compensate_22(valueStr);
                            break;
                        }
                        case 1346:{
                            setLocation_Compensate_23(valueStr);
                            break;
                        }
                        case 1348:{
                            setLocation_Compensate_24(valueStr);
                            break;
                        }
                        case 1350:{
                            setLocation_Compensate_25(valueStr);
                            break;
                        }
                        case 1352:{
                            setLocation_Compensate_26(valueStr);
                            break;
                        }
                        case 1354:{
                            setLocation_Compensate_27(valueStr);
                            break;
                        }
                        case 1356:{
                            setLocation_Compensate_28(valueStr);
                            break;
                        }
                        case 1358:{
                            setLocation_Compensate_29(valueStr);
                            break;
                        }
                        case 1374:{
                            setSwing_Corner_Compensate_Min(valueStr);
                            break;
                        }
                        case 1376:{
                            setSwing_Corner_Compensate_Max(valueStr);
                            break;
                        }
                        case 1378:{
                            setSwing_Corner_Compensate(valueStr);
                            break;
                        }

                        case 1750:{
                            setAny_Location_Compensate_1_Min(valueStr);
                            break;
                        }
                        case 1752:{
                            setAny_Location_Compensate_1_Max(valueStr);
                            break;
                        }
                        case 1754:{
                            setAny_Location_Compensate_1(valueStr);
                            break;
                        }
                        case 1756:{
                            setAny_Location_Compensate_2_Min(valueStr);
                            break;
                        }
                        case 1758:{
                            setAny_Location_Compensate_2_Max(valueStr);
                            break;
                        }
                        case 1760:{
                            setAny_Location_Compensate_2(valueStr);
                            break;
                        }
                        case 1762:{
                            setAny_Location_Compensate_3_Min(valueStr);
                            break;
                        }
                        case 1764:{
                            setAny_Location_Compensate_3_Max(valueStr);
                            break;
                        }
                        case 1766:{
                            setAny_Location_Compensate_3(valueStr);
                            break;
                        }
                        case 1768:{
                            setAny_Location_Compensate_4_Min(valueStr);
                            break;
                        }
                        case 1770:{
                            setAny_Location_Compensate_4_Max(valueStr);
                            break;
                        }
                        case 1772:{
                            setAny_Location_Compensate_4(valueStr);
                            break;
                        }
                        case 1774:{
                            setAny_Location_Compensate_5_Min(valueStr);
                            break;
                        }
                        case 1776:{
                            setAny_Location_Compensate_5_Max(valueStr);
                            break;
                        }
                        case 1778:{
                            setAny_Location_Compensate_5(valueStr);
                            break;
                        }
                        case 1780:{
                            setAny_Location_Compensate_6_Min(valueStr);
                            break;
                        }
                        case 1782:{
                            setAny_Location_Compensate_6_Max(valueStr);
                            break;
                        }
                        case 1784:{
                            setAny_Location_Compensate_6(valueStr);
                            break;
                        }
                        case 1786:{
                            setAny_Location_Compensate_7_Min(valueStr);
                            break;
                        }
                        case 1788:{
                            setAny_Location_Compensate_7_Max(valueStr);
                            break;
                        }
                        case 1790:{
                            setAny_Location_Compensate_7(valueStr);
                            break;
                        }
                        case 1792:{
                            setAny_Location_Compensate_8_Min(valueStr);
                            break;
                        }
                        case 1794:{
                            setAny_Location_Compensate_8_Max(valueStr);
                            break;
                        }
                        case 1796:{
                            setAny_Location_Compensate_8(valueStr);
                            break;
                        }
                        case 1798:{
                            setAny_Location_Compensate_9_Min(valueStr);
                            break;
                        }
                        case 1800:{
                            setAny_Location_Compensate_9_Max(valueStr);
                            break;
                        }
                        case 1802:{
                            setAny_Location_Compensate_9(valueStr);
                            break;
                        }
                        case 1804:{
                            setAny_Location_Compensate_10_Min(valueStr);
                            break;
                        }
                        case 1806:{
                            setAny_Location_Compensate_10_Max(valueStr);
                            break;
                        }
                        case 1808:{
                            setAny_Location_Compensate_10(valueStr);
                            break;
                        }
                        case 1810:{
                            setAny_Location_Compensate_11_Min(valueStr);
                            break;
                        }
                        case 1812:{
                            setAny_Location_Compensate_11_Max(valueStr);
                            break;
                        }
                        case 1814:{
                            setAny_Location_Compensate_11(valueStr);
                            break;
                        }
                        case 1816:{
                            setAny_Location_Compensate_12_Min(valueStr);
                            break;
                        }
                        case 1818:{
                            setAny_Location_Compensate_12_Max(valueStr);
                            break;
                        }
                        case 1820:{
                            setAny_Location_Compensate_12(valueStr);
                            break;
                        }
                        case 1822:{
                            setAny_Location_Compensate_13_Min(valueStr);
                            break;
                        }
                        case 1824:{
                            setAny_Location_Compensate_13_Max(valueStr);
                            break;
                        }
                        case 1826:{
                            setAny_Location_Compensate_13(valueStr);
                            break;
                        }
                        case 1828:{
                            setAny_Location_Compensate_14_Min(valueStr);
                            break;
                        }
                        case 1830:{
                            setAny_Location_Compensate_14_Max(valueStr);
                            break;
                        }
                        case 1832:{
                            setAny_Location_Compensate_14(valueStr);
                            break;
                        }
                        case 1834:{
                            setAny_Location_Compensate_15_Min(valueStr);
                            break;
                        }
                        case 1836:{
                            setAny_Location_Compensate_15_Max(valueStr);
                            break;
                        }
                        case 1838:{
                            setAny_Location_Compensate_15(valueStr);
                            break;
                        }
                        case 1840:{
                            setAny_Location_Compensate_16_Min(valueStr);
                            break;
                        }
                        case 1842:{
                            setAny_Location_Compensate_16_Max(valueStr);
                            break;
                        }
                        case 1844:{
                            setAny_Location_Compensate_16(valueStr);
                            break;
                        }
                        case 1846:{
                            setAny_Location_Compensate_17_Min(valueStr);
                            break;
                        }
                        case 1848:{
                            setAny_Location_Compensate_17_Max(valueStr);
                            break;
                        }
                        case 1850:{
                            setAny_Location_Compensate_17(valueStr);
                            break;
                        }
                        case 1852:{
                            setAny_Location_Compensate_18_Min(valueStr);
                            break;
                        }
                        case 1854:{
                            setAny_Location_Compensate_18_Max(valueStr);
                            break;
                        }
                        case 1856:{
                            setAny_Location_Compensate_18(valueStr);
                            break;
                        }
                        case 1858:{
                            setAny_Location_Compensate_19_Min(valueStr);
                            break;
                        }
                        case 1860:{
                            setAny_Location_Compensate_19_Max(valueStr);
                            break;
                        }
                        case 1862:{
                            setAny_Location_Compensate_19(valueStr);
                            break;
                        }
                        case 1864:{
                            setAny_Location_Compensate_20_Min(valueStr);
                            break;
                        }
                        case 1866:{
                            setAny_Location_Compensate_20_Max(valueStr);
                            break;
                        }
                        case 1868:{
                            setAny_Location_Compensate_20(valueStr);
                            break;
                        }



                        default:{
                            qDebug()<<"无效地址";
                            break;
                        }
                        }
                    } else {
                        qDebug() << "读取保持寄存器32失败:" << "地址:" << address << "错误:" << reply->errorString();
                    }
                    reply->deleteLater();
                });
            } else {
                reply->deleteLater();
            }
        } else {
            qDebug() << "发送读取请求失败:" << "地址:" << address;
        }

    });

}

void ModbusControl::on_Hold_Registers_16_Over_Read_Slots(int address)
{
    qDebug()<<"当前需要读取的16位寄存器的地址: "<<address;

    if (!m_Modbus || m_Modbus->state() != QModbusDevice::ConnectedState) {
        qDebug() << "error : disConnectedState";
        return;
    }

    // 使用QTimer::singleShot实现100ms延迟执行
    QTimer::singleShot(100, this, [this, address]() {
        // 读取保持寄存器寄存器
        QModbusDataUnit readUnit(QModbusDataUnit::HoldingRegisters, address, 1);

        if (QModbusReply* reply = m_Modbus->sendReadRequest(readUnit, 1)) {
            if (!reply->isFinished()) {
                connect(reply, &QModbusReply::finished, this,[this, reply, address]() {
                    if (reply->error() == QModbusDevice::NoError) {
                        const QModbusDataUnit unit = reply->result();
                        int readValue = unit.value(0);
                        QString valueStr = QString::number(readValue);

                        qDebug() << "读取保持寄存器16成功:" << "地址:" << address << "值:" << valueStr;

                        // 根据地址给对应的Q_PROPERTY赋值
                        switch(address) {
                        case 230:{
                            setCutSegments_NormalProcess(valueStr);
                            break;
                        }
                        case 374:{
                            setLeft_Right_Blow_Time(valueStr);
                            break;
                        }
                        case 208:{
                            setAcc_Dec_Time(valueStr);
                            break;
                        }
                        case 602:{
                            setBrake_Close_Delay(valueStr);
                            break;
                        }
                        case 228:{
                            setCorner_Cut_Segments(valueStr);
                            break;
                        }
                        case 229:{
                            setMechine_Saws_Mode(valueStr);
                            break;
                        }
                        case 1640:{
                            setQR_List_Left_1(valueStr);
                            break;
                        }
                        case 1641:{
                            setQR_List_Right_1(valueStr);
                            break;
                        }
                        case 1642:{
                            setQR_List_Left_2(valueStr);
                            break;
                        }
                        case 1643:{
                            setQR_List_Right_2(valueStr);
                            break;
                        }
                        case 1644:{
                            setQR_List_Left_3(valueStr);
                            break;
                        }
                        case 1645:{
                            setQR_List_Right_3(valueStr);
                            break;
                        }
                        case 1646:{
                            setQR_List_Left_4(valueStr);
                            break;
                        }
                        case 1647:{
                            setQR_List_Right_4(valueStr);
                            break;
                        }
                        case 1648:{
                            setQR_List_Left_5(valueStr);
                            break;
                        }
                        case 1649:{
                            setQR_List_Right_5(valueStr);
                            break;
                        }
                        case 1650:{
                            setQR_List_Left_6(valueStr);
                            break;
                        }
                        case 1651:{
                            setQR_List_Right_6(valueStr);
                            break;
                        }
                        case 1652:{
                            setQR_List_Left_7(valueStr);
                            break;
                        }
                        case 1653:{
                            setQR_List_Right_7(valueStr);
                            break;
                        }
                        case 1654:{
                            setQR_List_Left_8(valueStr);
                            break;
                        }
                        case 1655:{
                            setQR_List_Right_8(valueStr);
                            break;
                        }
                        case 1656:{
                            setQR_List_Left_9(valueStr);
                            break;
                        }
                        case 1657:{
                            setQR_List_Right_9(valueStr);
                            break;
                        }
                        case 1658:{
                            setQR_List_Left_10(valueStr);
                            break;
                        }
                        case 1659:{
                            setQR_List_Right_10(valueStr);
                            break;
                        }
                        case 1660:{
                            setQR_List_Left_11(valueStr);
                            break;
                        }
                        case 1661:{
                            setQR_List_Right_11(valueStr);
                            break;
                        }
                        case 1662:{
                            setQR_List_Left_12(valueStr);
                            break;
                        }
                        case 1663:{
                            setQR_List_Right_12(valueStr);
                            break;
                        }
                        case 1664:{
                            setQR_List_Left_13(valueStr);
                            break;
                        }
                        case 1665:{
                            setQR_List_Right_13(valueStr);
                            break;
                        }
                        case 1666:{
                            setQR_List_Left_14(valueStr);
                            break;
                        }
                        case 1667:{
                            setQR_List_Right_14(valueStr);
                            break;
                        }
                        case 1668:{
                            setQR_List_Left_15(valueStr);
                            break;
                        }
                        case 1669:{
                            setQR_List_Right_15(valueStr);
                            break;
                        }
                        case 1670:{
                            setQR_List_Left_16(valueStr);
                            break;
                        }
                        case 1671:{
                            setQR_List_Right_16(valueStr);
                            break;
                        }
                        case 1672:{
                            setQR_List_Left_17(valueStr);
                            break;
                        }
                        case 1673:{
                            setQR_List_Right_17(valueStr);
                            break;
                        }
                        case 1674:{
                            setQR_List_Left_18(valueStr);
                            break;
                        }
                        case 1675:{
                            setQR_List_Right_18(valueStr);
                            break;
                        }
                        case 1676:{
                            setQR_List_Left_19(valueStr);
                            break;
                        }
                        case 1677:{
                            setQR_List_Right_19(valueStr);
                            break;
                        }
                        case 1678:{
                            setQR_List_Left_20(valueStr);
                            break;
                        }
                        case 1679:{
                            setQR_List_Right_20(valueStr);
                            break;
                        }
                        case 1680:{
                            setQR_List_CutCount_1(valueStr);
                            break;
                        }
                        case 1681:{
                            setQR_List_CutCount_2(valueStr);
                            break;
                        }
                        case 1682:{
                            setQR_List_CutCount_3(valueStr);
                            break;
                        }
                        case 1683:{
                            setQR_List_CutCount_4(valueStr);
                            break;
                        }
                        case 1684:{
                            setQR_List_CutCount_5(valueStr);
                            break;
                        }
                        case 1685:{
                            setQR_List_CutCount_6(valueStr);
                            break;
                        }
                        case 1686:{
                            setQR_List_CutCount_7(valueStr);
                            break;
                        }
                        case 1687:{
                            setQR_List_CutCount_8(valueStr);
                            break;
                        }
                        case 1688:{
                            setQR_List_CutCount_9(valueStr);
                            break;
                        }
                        case 1689:{
                            setQR_List_CutCount_10(valueStr);
                            break;
                        }
                        case 1690:{
                            setQR_List_CutCount_11(valueStr);
                            break;
                        }
                        case 1691:{
                            setQR_List_CutCount_12(valueStr);
                            break;
                        }
                        case 1692:{
                            setQR_List_CutCount_13(valueStr);
                            break;
                        }
                        case 1693:{
                            setQR_List_CutCount_14(valueStr);
                            break;
                        }
                        case 1694:{
                            setQR_List_CutCount_15(valueStr);
                            break;
                        }
                        case 1695:{
                            setQR_List_CutCount_16(valueStr);
                            break;
                        }
                        case 1696:{
                            setQR_List_CutCount_17(valueStr);
                            break;
                        }
                        case 1697:{
                            setQR_List_CutCount_18(valueStr);
                            break;
                        }
                        case 1698:{
                            setQR_List_CutCount_19(valueStr);
                            break;
                        }
                        case 1699:{
                            setQR_List_CutCount_20(valueStr);
                            break;
                        }
                        case 1700:{
                            setQR_List_WorkedCount_1(valueStr);
                            break;
                        }
                        case 1701:{
                            setQR_List_WorkedCount_2(valueStr);
                            break;
                        }
                        case 1702:{
                            setQR_List_WorkedCount_3(valueStr);
                            break;
                        }
                        case 1703:{
                            setQR_List_WorkedCount_4(valueStr);
                            break;
                        }
                        case 1704:{
                            setQR_List_WorkedCount_5(valueStr);
                            break;
                        }
                        case 1705:{
                            setQR_List_WorkedCount_6(valueStr);
                            break;
                        }
                        case 1706:{
                            setQR_List_WorkedCount_7(valueStr);
                            break;
                        }
                        case 1707:{
                            setQR_List_WorkedCount_8(valueStr);
                            break;
                        }
                        case 1708:{
                            setQR_List_WorkedCount_9(valueStr);
                            break;
                        }
                        case 1709:{
                            setQR_List_WorkedCount_10(valueStr);
                            break;
                        }
                        case 1710:{
                            setQR_List_WorkedCount_11(valueStr);
                            break;
                        }
                        case 1711:{
                            setQR_List_WorkedCount_12(valueStr);
                            break;
                        }
                        case 1712:{
                            setQR_List_WorkedCount_13(valueStr);
                            break;
                        }
                        case 1713:{
                            setQR_List_WorkedCount_14(valueStr);
                            break;
                        }
                        case 1714:{
                            setQR_List_WorkedCount_15(valueStr);
                            break;
                        }
                        case 1715:{
                            setQR_List_WorkedCount_16(valueStr);
                            break;
                        }
                        case 1716:{
                            setQR_List_WorkedCount_17(valueStr);
                            break;
                        }
                        case 1717:{
                            setQR_List_WorkedCount_18(valueStr);
                            break;
                        }
                        case 1718:{
                            setQR_List_WorkedCount_19(valueStr);
                            break;
                        }
                        case 1719:{
                            setQR_List_WorkedCount_20(valueStr);
                            break;
                        }

                        default:{
                            qDebug()<<"无效地址";
                            break;
                        }

                        }

                    } else {
                        qDebug() << "读取保持寄存器16失败:" << "地址:" << address << "错误:" << reply->errorString();
                    }
                    reply->deleteLater();
                });
            } else {
                reply->deleteLater();
            }
        } else {
            qDebug() << "发送读取请求失败:" << "地址:" << address;
        }

    });
}

void ModbusControl::on_Scanner_Read_Result_Slots(const QByteArray &recvResult)
{
    qDebug()<<"1111111111111            扫码枪触发 开始          11111111111111";

    write_into_PLC_Coils(428,true);

    QList Mid = (recvResult).split(',');

    switch(Current_QR_Type())
    {
    case 1 :{
        qDebug()<<"长风离线二维码解析";
        // qDebug()<<"触发 长风二维码 解析";
        // 第 1 行数据
        // 料长
        write_into_PLC_32_Hold(1600,Mid.value(1));
        // 左角度
        if(Mid.value(2) == "45.0")
        {
            write_into_PLC_16_Hold(1640,"0");
        }
        else if(Mid.value(2) == "90.0")
        {
            write_into_PLC_16_Hold(1640,"1");
        }
        else
        {
            write_into_PLC_16_Hold(1640,"0");
        }
        // 右角度
        if(Mid.value(3) == "45.0")
        {
            write_into_PLC_16_Hold(1641,"0");
        }
        else if(Mid.value(3) == "90.0")
        {
            write_into_PLC_16_Hold(1641,"1");
        }
        else
        {
            write_into_PLC_16_Hold(1641,"0");
        }
        // 切割数量
        write_into_PLC_16_Hold(1680,Mid.value(4));
        // 第 2 行数据
        // 料长
        write_into_PLC_32_Hold(1602,Mid.value(5));
        // 左角度
        if(Mid.value(6) == "45.0")
        {
            write_into_PLC_16_Hold(1642,"0");
        }
        else if(Mid.value(6) == "90.0")
        {
            write_into_PLC_16_Hold(1642,"1");
        }
        else
        {
            write_into_PLC_16_Hold(1642,"0");
        }
        // 右角度
        if(Mid.value(7) == "45.0")
        {
            write_into_PLC_16_Hold(1643,"0");
        }
        else if(Mid.value(7) == "90.0")
        {
            write_into_PLC_16_Hold(1643,"1");
        }
        else
        {
            write_into_PLC_16_Hold(1643,"0");
        }
        // 切割数量
        write_into_PLC_16_Hold(1681,Mid.value(8));
        // 第 3 行数据
        // 料长
        write_into_PLC_32_Hold(1604,Mid.value(9));
        // 左角度
        if(Mid.value(10) == "45.0")
        {
            write_into_PLC_16_Hold(1644,"0");
        }
        else if(Mid.value(10) == "90.0")
        {
            write_into_PLC_16_Hold(1644,"1");
        }
        else
        {
            write_into_PLC_16_Hold(1644,"0");
        }
        // 右角度
        if(Mid.value(11) == "45.0")
        {
            write_into_PLC_16_Hold(1645,"0");
        }
        else if(Mid.value(11) == "90.0")
        {
            write_into_PLC_16_Hold(1645,"1");
        }
        else
        {
            write_into_PLC_16_Hold(1645,"0");
        }
        // 切割数量
        write_into_PLC_16_Hold(1682,Mid.value(12));
        // 第 4 行数据
        // 料长
        write_into_PLC_32_Hold(1606,Mid.value(13));
        // 左角度
        if(Mid.value(14) == "45.0")
        {
            write_into_PLC_16_Hold(1646,"0");
        }
        else if(Mid.value(14) == "90.0")
        {
            write_into_PLC_16_Hold(1646,"1");
        }
        else
        {
            write_into_PLC_16_Hold(1646,"0");
        }
        // 右角度
        if(Mid.value(15) == "45.0")
        {
            write_into_PLC_16_Hold(1647,"0");
        }
        else if(Mid.value(15) == "90.0")
        {
            write_into_PLC_16_Hold(1647,"1");
        }
        else
        {
            write_into_PLC_16_Hold(1647,"0");
        }
        // 切割数量
        write_into_PLC_16_Hold(1683,Mid.value(16));
        // 第 5 行数据
        // 料长
        write_into_PLC_32_Hold(1608,Mid.value(17));
        // 左角度
        if(Mid.value(18) == "45.0")
        {
            write_into_PLC_16_Hold(1648,"0");
        }
        else if(Mid.value(18) == "90.0")
        {
            write_into_PLC_16_Hold(1648,"1");
        }
        else
        {
            write_into_PLC_16_Hold(1648,"0");
        }
        // 右角度
        if(Mid.value(19) == "45.0")
        {
            write_into_PLC_16_Hold(1649,"0");
        }
        else if(Mid.value(19) == "90.0")
        {
            write_into_PLC_16_Hold(1649,"1");
        }
        else
        {
            write_into_PLC_16_Hold(1649,"0");
        }
        // 切割数量
        write_into_PLC_16_Hold(1684,Mid.value(20));
        // 第 6 行数据
        // 料长
        write_into_PLC_32_Hold(1610,Mid.value(21));
        // 左角度
        if(Mid.value(22) == "45.0")
        {
            write_into_PLC_16_Hold(1650,"0");
        }
        else if(Mid.value(22) == "90.0")
        {
            write_into_PLC_16_Hold(1650,"1");
        }
        else
        {
            write_into_PLC_16_Hold(1650,"0");
        }
        // 右角度
        if(Mid.value(23) == "45.0")
        {
            write_into_PLC_16_Hold(1651,"0");
        }
        else if(Mid.value(23) == "90.0")
        {
            write_into_PLC_16_Hold(1651,"1");
        }
        else
        {
            write_into_PLC_16_Hold(1651,"0");
        }
        // 切割数量
        write_into_PLC_16_Hold(1685,Mid.value(24));
        // 第 7 行数据
        // 料长
        write_into_PLC_32_Hold(1612,Mid.value(25));
        // 左角度
        if(Mid.value(26) == "45.0")
        {
            write_into_PLC_16_Hold(1652,"0");
        }
        else if(Mid.value(26) == "90.0")
        {
            write_into_PLC_16_Hold(1652,"1");
        }
        else
        {
            write_into_PLC_16_Hold(1652,"0");
        }
        // 右角度
        if(Mid.value(27) == "45.0")
        {
            write_into_PLC_16_Hold(1653,"0");
        }
        else if(Mid.value(27) == "90.0")
        {
            write_into_PLC_16_Hold(1653,"1");
        }
        else
        {
            write_into_PLC_16_Hold(1653,"0");
        }
        // 切割数量
        write_into_PLC_16_Hold(1686,Mid.value(28));
        // 第 8 行数据
        // 料长
        write_into_PLC_32_Hold(1614,Mid.value(29));
        // 左角度
        if(Mid.value(30) == "45.0")
        {
            write_into_PLC_16_Hold(1654,"0");
        }
        else if(Mid.value(30) == "90.0")
        {
            write_into_PLC_16_Hold(1654,"1");
        }
        else
        {
            write_into_PLC_16_Hold(1654,"0");
        }
        // 右角度
        if(Mid.value(31) == "45.0")
        {
            write_into_PLC_16_Hold(1655,"0");
        }
        else if(Mid.value(31) == "90.0")
        {
            write_into_PLC_16_Hold(1655,"1");
        }
        else
        {
            write_into_PLC_16_Hold(1655,"0");
        }
        // 切割数量
        write_into_PLC_16_Hold(1687,Mid.value(32));
        // 第 9 行数据
        // 料长
        write_into_PLC_32_Hold(1616,Mid.value(33));
        // 左角度
        if(Mid.value(34) == "45.0")
        {
            write_into_PLC_16_Hold(1656,"0");
        }
        else if(Mid.value(34) == "90.0")
        {
            write_into_PLC_16_Hold(1656,"1");
        }
        else
        {
            write_into_PLC_16_Hold(1656,"0");
        }
        // 右角度
        if(Mid.value(35) == "45.0")
        {
            write_into_PLC_16_Hold(1657,"0");
        }
        else if(Mid.value(35) == "90.0")
        {
            write_into_PLC_16_Hold(1657,"1");
        }
        else
        {
            write_into_PLC_16_Hold(1657,"0");
        }
        // 切割数量
        write_into_PLC_16_Hold(1688,Mid.value(36));
        // 第 10行数据
        // 料长
        write_into_PLC_32_Hold(1618,Mid.value(37));
        // 左角度
        if(Mid.value(38) == "45.0")
        {
            write_into_PLC_16_Hold(1658,"0");
        }
        else if(Mid.value(38) == "90.0")
        {
            write_into_PLC_16_Hold(1658,"1");
        }
        else
        {
            write_into_PLC_16_Hold(1658,"0");
        }
        // 右角度
        if(Mid.value(39) == "45.0")
        {
            write_into_PLC_16_Hold(1659,"0");
        }
        else if(Mid.value(39) == "90.0")
        {
            write_into_PLC_16_Hold(1659,"1");
        }
        else
        {
            write_into_PLC_16_Hold(1659,"0");
        }
        // 切割数量
        write_into_PLC_16_Hold(1689,Mid.value(40));

        write_into_PLC_32_Hold(1620,"0");
        write_into_PLC_16_Hold(1660,"0");
        write_into_PLC_16_Hold(1661,"0");
        write_into_PLC_16_Hold(1690,"0");
        write_into_PLC_16_Hold(1710,"0");

        write_into_PLC_32_Hold(1622,"0");
        write_into_PLC_16_Hold(1662,"0");
        write_into_PLC_16_Hold(1663,"0");
        write_into_PLC_16_Hold(1691,"0");
        write_into_PLC_16_Hold(1711,"0");

        write_into_PLC_32_Hold(1624,"0");
        write_into_PLC_16_Hold(1664,"0");
        write_into_PLC_16_Hold(1665,"0");
        write_into_PLC_16_Hold(1692,"0");
        write_into_PLC_16_Hold(1712,"0");

        write_into_PLC_32_Hold(1626,"0");
        write_into_PLC_16_Hold(1666,"0");
        write_into_PLC_16_Hold(1667,"0");
        write_into_PLC_16_Hold(1693,"0");
        write_into_PLC_16_Hold(1713,"0");

        write_into_PLC_32_Hold(1628,"0");
        write_into_PLC_16_Hold(1668,"0");
        write_into_PLC_16_Hold(1669,"0");
        write_into_PLC_16_Hold(1694,"0");
        write_into_PLC_16_Hold(1714,"0");

        write_into_PLC_32_Hold(1630,"0");
        write_into_PLC_16_Hold(1670,"0");
        write_into_PLC_16_Hold(1671,"0");
        write_into_PLC_16_Hold(1695,"0");
        write_into_PLC_16_Hold(1715,"0");

        write_into_PLC_32_Hold(1632,"0");
        write_into_PLC_16_Hold(1672,"0");
        write_into_PLC_16_Hold(1673,"0");
        write_into_PLC_16_Hold(1696,"0");
        write_into_PLC_16_Hold(1716,"0");

        write_into_PLC_32_Hold(1634,"0");
        write_into_PLC_16_Hold(1674,"0");
        write_into_PLC_16_Hold(1675,"0");
        write_into_PLC_16_Hold(1697,"0");
        write_into_PLC_16_Hold(1717,"0");

        write_into_PLC_32_Hold(1636,"0");
        write_into_PLC_16_Hold(1676,"0");
        write_into_PLC_16_Hold(1677,"0");
        write_into_PLC_16_Hold(1698,"0");
        write_into_PLC_16_Hold(1718,"0");

        write_into_PLC_32_Hold(1638,"0");
        write_into_PLC_16_Hold(1678,"0");
        write_into_PLC_16_Hold(1679,"0");
        write_into_PLC_16_Hold(1699,"0");
        write_into_PLC_16_Hold(1719,"0");


        break;
    }
    case 2 :{
        qDebug()<<"速制离线二维码解析";
        if(Mid.length() == 87)
        {
            // qDebug()<<"速制二维码 - 外框";
            // 速制二维码
            // 第 1 行数据
            // 料长
            write_into_PLC_32_Hold(1600,Mid.value(1));
            // 左角度
            if(Mid.value(2) == "45.0")
            {
                write_into_PLC_16_Hold(1640,"0");
            }
            else if(Mid.value(2) == "90.0")
            {
                write_into_PLC_16_Hold(1640,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1640,"0");
            }
            // 右角度
            if(Mid.value(3) == "45.0")
            {
                write_into_PLC_16_Hold(1641,"0");
            }
            else if(Mid.value(3) == "90.0")
            {
                write_into_PLC_16_Hold(1641,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1641,"0");
            }
            // 切割数量
            write_into_PLC_16_Hold(1680,Mid.value(4));
            // 第 2 行数据
            // 料长
            write_into_PLC_32_Hold(1602,Mid.value(5));
            // 左角度
            if(Mid.value(6) == "45.0")
            {
                write_into_PLC_16_Hold(1642,"0");
            }
            else if(Mid.value(6) == "90.0")
            {
                write_into_PLC_16_Hold(1642,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1642,"0");
            }
            // 右角度
            if(Mid.value(7) == "45.0")
            {
                write_into_PLC_16_Hold(1643,"0");
            }
            else if(Mid.value(7) == "90.0")
            {
                write_into_PLC_16_Hold(1643,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1643,"0");
            }
            // 切割数量
            write_into_PLC_16_Hold(1681,Mid.value(8));
            // 第 3 行数据
            // 料长
            write_into_PLC_32_Hold(1604,Mid.value(9));
            // 左角度
            if(Mid.value(10) == "45.0")
            {
                write_into_PLC_16_Hold(1644,"0");
            }
            else if(Mid.value(10) == "90.0")
            {
                write_into_PLC_16_Hold(1644,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1644,"0");
            }
            // 右角度
            if(Mid.value(11) == "45.0")
            {
                write_into_PLC_16_Hold(1645,"0");
            }
            else if(Mid.value(11) == "90.0")
            {
                write_into_PLC_16_Hold(1645,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1645,"0");
            }
            // 切割数量
            write_into_PLC_16_Hold(1682,Mid.value(12));
            // 第 4 行数据
            // 料长
            write_into_PLC_32_Hold(1606,Mid.value(13));
            // 左角度
            if(Mid.value(14) == "45.0")
            {
                write_into_PLC_16_Hold(1646,"0");
            }
            else if(Mid.value(14) == "90.0")
            {
                write_into_PLC_16_Hold(1646,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1646,"0");
            }
            // 右角度
            if(Mid.value(15) == "45.0")
            {
                write_into_PLC_16_Hold(1647,"0");
            }
            else if(Mid.value(15) == "90.0")
            {
                write_into_PLC_16_Hold(1647,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1647,"0");
            }
            // 切割数量
            write_into_PLC_16_Hold(1683,Mid.value(16));
            // 第 5 行数据
            // 料长
            write_into_PLC_32_Hold(1608,Mid.value(17));
            // 左角度
            if(Mid.value(18) == "45.0")
            {
                write_into_PLC_16_Hold(1648,"0");
            }
            else if(Mid.value(18) == "90.0")
            {
                write_into_PLC_16_Hold(1648,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1648,"0");
            }
            // 右角度
            if(Mid.value(19) == "45.0")
            {
                write_into_PLC_16_Hold(1649,"0");
            }
            else if(Mid.value(19) == "90.0")
            {
                write_into_PLC_16_Hold(1649,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1649,"0");
            }
            // 切割数量
            write_into_PLC_16_Hold(1684,Mid.value(20));
            // 第 6 行数据
            // 料长
            write_into_PLC_32_Hold(1610,Mid.value(21));
            // 左角度
            if(Mid.value(22) == "45.0")
            {
                write_into_PLC_16_Hold(1650,"0");
            }
            else if(Mid.value(22) == "90.0")
            {
                write_into_PLC_16_Hold(1650,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1650,"0");
            }
            // 右角度
            if(Mid.value(23) == "45.0")
            {
                write_into_PLC_16_Hold(1651,"0");
            }
            else if(Mid.value(23) == "90.0")
            {
                write_into_PLC_16_Hold(1651,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1651,"0");
            }
            // 切割数量
            write_into_PLC_16_Hold(1685,Mid.value(24));
            // 第 7 行数据
            // 料长
            write_into_PLC_32_Hold(1612,Mid.value(25));
            // 左角度
            if(Mid.value(26) == "45.0")
            {
                write_into_PLC_16_Hold(1652,"0");
            }
            else if(Mid.value(26) == "90.0")
            {
                write_into_PLC_16_Hold(1652,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1652,"0");
            }
            // 右角度
            if(Mid.value(27) == "45.0")
            {
                write_into_PLC_16_Hold(1653,"0");
            }
            else if(Mid.value(27) == "90.0")
            {
                write_into_PLC_16_Hold(1653,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1653,"0");
            }
            // 切割数量
            write_into_PLC_16_Hold(1686,Mid.value(28));
            // 第 8 行数据
            // 料长
            write_into_PLC_32_Hold(1614,Mid.value(29));
            // 左角度
            if(Mid.value(30) == "45.0")
            {
                write_into_PLC_16_Hold(1654,"0");
            }
            else if(Mid.value(30) == "90.0")
            {
                write_into_PLC_16_Hold(1654,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1654,"0");
            }
            // 右角度
            if(Mid.value(31) == "45.0")
            {
                write_into_PLC_16_Hold(1655,"0");
            }
            else if(Mid.value(31) == "90.0")
            {
                write_into_PLC_16_Hold(1655,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1655,"0");
            }
            // 切割数量
            write_into_PLC_16_Hold(1687,Mid.value(32));
            // 第 9 行数据
            // 料长
            write_into_PLC_32_Hold(1616,Mid.value(33));
            // 左角度
            if(Mid.value(34) == "45.0")
            {
                write_into_PLC_16_Hold(1656,"0");
            }
            else if(Mid.value(34) == "90.0")
            {
                write_into_PLC_16_Hold(1656,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1656,"0");
            }
            // 右角度
            if(Mid.value(35) == "45.0")
            {
                write_into_PLC_16_Hold(1657,"0");
            }
            else if(Mid.value(35) == "90.0")
            {
                write_into_PLC_16_Hold(1657,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1657,"0");
            }
            // 切割数量
            write_into_PLC_16_Hold(1688,Mid.value(36));
            // 第 10行数据
            // 料长
            write_into_PLC_32_Hold(1618,Mid.value(37));
            // 左角度
            if(Mid.value(38) == "45.0")
            {
                write_into_PLC_16_Hold(1658,"0");
            }
            else if(Mid.value(38) == "90.0")
            {
                write_into_PLC_16_Hold(1658,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1658,"0");
            }
            // 右角度
            if(Mid.value(39) == "45.0")
            {
                write_into_PLC_16_Hold(1659,"0");
            }
            else if(Mid.value(39) == "90.0")
            {
                write_into_PLC_16_Hold(1659,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1659,"0");
            }
            // 切割数量
            write_into_PLC_16_Hold(1689,Mid.value(40));
            // 第 11 行数据
            // 料长
            write_into_PLC_32_Hold(1620,Mid.value(41));
            // 左角度
            if(Mid.value(42) == "45.0")
            {
                write_into_PLC_16_Hold(1660,"0");
            }
            else if(Mid.value(42) == "90.0")
            {
                write_into_PLC_16_Hold(1660,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1660,"0");
            }
            // 右角度
            if(Mid.value(43) == "45.0")
            {
                write_into_PLC_16_Hold(1661,"0");
            }
            else if(Mid.value(43) == "90.0")
            {
                write_into_PLC_16_Hold(1661,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1661,"0");
            }
            // 切割数量
            write_into_PLC_16_Hold(1690,Mid.value(44));
            // 第 12 行数据
            // 料长
            write_into_PLC_32_Hold(1622,Mid.value(45));
            // 左角度
            if(Mid.value(46) == "45.0")
            {
                write_into_PLC_16_Hold(1662,"0");
            }
            else if(Mid.value(46) == "90.0")
            {
                write_into_PLC_16_Hold(1662,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1662,"0");
            }
            // 右角度
            if(Mid.value(47) == "45.0")
            {
                write_into_PLC_16_Hold(1663,"0");
            }
            else if(Mid.value(47) == "90.0")
            {
                write_into_PLC_16_Hold(1663,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1663,"0");
            }
            // 切割数量
            write_into_PLC_16_Hold(1691,Mid.value(48));
            // 第 13 行数据
            // 料长
            write_into_PLC_32_Hold(1624,Mid.value(49));
            // 左角度
            if(Mid.value(50) == "45.0")
            {
                write_into_PLC_16_Hold(1664,"0");
            }
            else if(Mid.value(50) == "90.0")
            {
                write_into_PLC_16_Hold(1664,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1664,"0");
            }
            // 右角度
            if(Mid.value(51) == "45.0")
            {
                write_into_PLC_16_Hold(1665,"0");
            }
            else if(Mid.value(51) == "90.0")
            {
                write_into_PLC_16_Hold(1665,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1665,"0");
            }
            // 切割数量
            write_into_PLC_16_Hold(1692,Mid.value(52));
            // 第 14 行数据
            // 料长
            write_into_PLC_32_Hold(1626,Mid.value(53));
            // 左角度
            if(Mid.value(54) == "45.0")
            {
                write_into_PLC_16_Hold(1666,"0");
            }
            else if(Mid.value(54) == "90.0")
            {
                write_into_PLC_16_Hold(1666,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1666,"0");
            }
            // 右角度
            if(Mid.value(55) == "45.0")
            {
                write_into_PLC_16_Hold(1667,"0");
            }
            else if(Mid.value(55) == "90.0")
            {
                write_into_PLC_16_Hold(1667,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1667,"0");
            }
            // 切割数量
            write_into_PLC_16_Hold(1693,Mid.value(56));
            // 第 15 行数据
            // 料长
            write_into_PLC_32_Hold(1628,Mid.value(57));
            // 左角度
            if(Mid.value(58) == "45.0")
            {
                write_into_PLC_16_Hold(1668,"0");
            }
            else if(Mid.value(58) == "90.0")
            {
                write_into_PLC_16_Hold(1668,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1668,"0");
            }
            // 右角度
            if(Mid.value(59) == "45.0")
            {
                write_into_PLC_16_Hold(1669,"0");
            }
            else if(Mid.value(59) == "90.0")
            {
                write_into_PLC_16_Hold(1669,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1669,"0");
            }
            // 切割数量
            write_into_PLC_16_Hold(1694,Mid.value(60));
            // 第 16 行数据
            // 料长
            write_into_PLC_32_Hold(1630,Mid.value(61));
            // 左角度
            if(Mid.value(62) == "45.0")
            {
                write_into_PLC_16_Hold(1670,"0");
            }
            else if(Mid.value(62) == "90.0")
            {
                write_into_PLC_16_Hold(1670,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1670,"0");
            }
            // 右角度
            if(Mid.value(63) == "45.0")
            {
                write_into_PLC_16_Hold(1671,"0");
            }
            else if(Mid.value(63) == "90.0")
            {
                write_into_PLC_16_Hold(1671,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1671,"0");
            }
            // 切割数量
            write_into_PLC_16_Hold(1695,Mid.value(64));
            // 第 17 行数据
            // 料长
            write_into_PLC_32_Hold(1632,Mid.value(65));
            // 左角度
            if(Mid.value(66) == "45.0")
            {
                write_into_PLC_16_Hold(1672,"0");
            }
            else if(Mid.value(66) == "90.0")
            {
                write_into_PLC_16_Hold(1672,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1672,"0");
            }
            // 右角度
            if(Mid.value(67) == "45.0")
            {
                write_into_PLC_16_Hold(1673,"0");
            }
            else if(Mid.value(67) == "90.0")
            {
                write_into_PLC_16_Hold(1673,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1673,"0");
            }
            // 切割数量
            write_into_PLC_16_Hold(1696,Mid.value(58));
            // 第 18 行数据
            // 料长
            write_into_PLC_32_Hold(1634,Mid.value(59));
            // 左角度
            if(Mid.value(60) == "45.0")
            {
                write_into_PLC_16_Hold(1674,"0");
            }
            else if(Mid.value(60) == "90.0")
            {
                write_into_PLC_16_Hold(1674,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1674,"0");
            }
            // 右角度
            if(Mid.value(61) == "45.0")
            {
                write_into_PLC_16_Hold(1675,"0");
            }
            else if(Mid.value(61) == "90.0")
            {
                write_into_PLC_16_Hold(1675,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1675,"0");
            }
            // 切割数量
            write_into_PLC_16_Hold(1697,Mid.value(62));
            // 第 19 行数据
            // 料长
            write_into_PLC_32_Hold(1636,Mid.value(63));
            // 左角度
            if(Mid.value(64) == "45.0")
            {
                write_into_PLC_16_Hold(1676,"0");
            }
            else if(Mid.value(64) == "90.0")
            {
                write_into_PLC_16_Hold(1676,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1676,"0");
            }
            // 右角度
            if(Mid.value(65) == "45.0")
            {
                write_into_PLC_16_Hold(1677,"0");
            }
            else if(Mid.value(65) == "90.0")
            {
                write_into_PLC_16_Hold(1677,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1677,"0");
            }
            // 切割数量
            write_into_PLC_16_Hold(1698,Mid.value(66));
            // 第 20 行数据
            // 料长
            write_into_PLC_32_Hold(1638,Mid.value(67));
            // 左角度
            if(Mid.value(68) == "45.0")
            {
                write_into_PLC_16_Hold(1678,"0");
            }
            else if(Mid.value(68) == "90.0")
            {
                write_into_PLC_16_Hold(1678,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1678,"0");
            }
            // 右角度
            if(Mid.value(69) == "45.0")
            {
                write_into_PLC_16_Hold(1679,"0");
            }
            else if(Mid.value(69) == "90.0")
            {
                write_into_PLC_16_Hold(1679,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1679,"0");
            }
            // 切割数量
            write_into_PLC_16_Hold(1699,Mid.value(70));
        }
        else if(Mid.length() == 89)
        {
            // qDebug()<<"速制二维码 - 内扇";        // 第 1 行数据
            // 料长
            write_into_PLC_32_Hold(1600,Mid.value(1));
            // 左角度
            if(Mid.value(2) == "45.0")
            {
                write_into_PLC_16_Hold(1640,"0");
            }
            else if(Mid.value(2) == "90.0")
            {
                write_into_PLC_16_Hold(1640,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1640,"0");
            }
            // 右角度
            if(Mid.value(3) == "45.0")
            {
                write_into_PLC_16_Hold(1641,"0");
            }
            else if(Mid.value(3) == "90.0")
            {
                write_into_PLC_16_Hold(1641,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1641,"0");
            }
            // 切割数量
            write_into_PLC_16_Hold(1680,Mid.value(4));
            // 第 2 行数据
            // 料长
            write_into_PLC_32_Hold(1602,Mid.value(5));
            // 左角度
            if(Mid.value(6) == "45.0")
            {
                write_into_PLC_16_Hold(1642,"0");
            }
            else if(Mid.value(6) == "90.0")
            {
                write_into_PLC_16_Hold(1642,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1642,"0");
            }
            // 右角度
            if(Mid.value(7) == "45.0")
            {
                write_into_PLC_16_Hold(1643,"0");
            }
            else if(Mid.value(7) == "90.0")
            {
                write_into_PLC_16_Hold(1643,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1643,"0");
            }
            // 切割数量
            write_into_PLC_16_Hold(1681,Mid.value(8));
            // 第 3 行数据
            // 料长
            write_into_PLC_32_Hold(1604,Mid.value(9));
            // 左角度
            if(Mid.value(10) == "45.0")
            {
                write_into_PLC_16_Hold(1644,"0");
            }
            else if(Mid.value(10) == "90.0")
            {
                write_into_PLC_16_Hold(1644,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1644,"0");
            }
            // 右角度
            if(Mid.value(11) == "45.0")
            {
                write_into_PLC_16_Hold(1645,"0");
            }
            else if(Mid.value(11) == "90.0")
            {
                write_into_PLC_16_Hold(1645,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1645,"0");
            }
            // 切割数量
            write_into_PLC_16_Hold(1682,Mid.value(12));
            // 第 4 行数据
            // 料长
            write_into_PLC_32_Hold(1606,Mid.value(13));
            // 左角度
            if(Mid.value(14) == "45.0")
            {
                write_into_PLC_16_Hold(1646,"0");
            }
            else if(Mid.value(14) == "90.0")
            {
                write_into_PLC_16_Hold(1646,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1646,"0");
            }
            // 右角度
            if(Mid.value(15) == "45.0")
            {
                write_into_PLC_16_Hold(1647,"0");
            }
            else if(Mid.value(15) == "90.0")
            {
                write_into_PLC_16_Hold(1647,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1647,"0");
            }
            // 切割数量
            write_into_PLC_16_Hold(1683,Mid.value(16));
            // 第 5 行数据
            // 料长
            write_into_PLC_32_Hold(1608,Mid.value(17));
            // 左角度
            if(Mid.value(18) == "45.0")
            {
                write_into_PLC_16_Hold(1648,"0");
            }
            else if(Mid.value(18) == "90.0")
            {
                write_into_PLC_16_Hold(1648,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1648,"0");
            }
            // 右角度
            if(Mid.value(19) == "45.0")
            {
                write_into_PLC_16_Hold(1649,"0");
            }
            else if(Mid.value(19) == "90.0")
            {
                write_into_PLC_16_Hold(1649,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1649,"0");
            }
            // 切割数量
            write_into_PLC_16_Hold(1684,Mid.value(20));
            // 第 6 行数据
            // 料长
            write_into_PLC_32_Hold(1610,Mid.value(21));
            // 左角度
            if(Mid.value(22) == "45.0")
            {
                write_into_PLC_16_Hold(1650,"0");
            }
            else if(Mid.value(22) == "90.0")
            {
                write_into_PLC_16_Hold(1650,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1650,"0");
            }
            // 右角度
            if(Mid.value(23) == "45.0")
            {
                write_into_PLC_16_Hold(1651,"0");
            }
            else if(Mid.value(23) == "90.0")
            {
                write_into_PLC_16_Hold(1651,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1651,"0");
            }
            // 切割数量
            write_into_PLC_16_Hold(1685,Mid.value(24));
            // 第 7 行数据
            // 料长
            write_into_PLC_32_Hold(1612,Mid.value(25));
            // 左角度
            if(Mid.value(26) == "45.0")
            {
                write_into_PLC_16_Hold(1652,"0");
            }
            else if(Mid.value(26) == "90.0")
            {
                write_into_PLC_16_Hold(1652,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1652,"0");
            }
            // 右角度
            if(Mid.value(27) == "45.0")
            {
                write_into_PLC_16_Hold(1653,"0");
            }
            else if(Mid.value(27) == "90.0")
            {
                write_into_PLC_16_Hold(1653,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1653,"0");
            }
            // 切割数量
            write_into_PLC_16_Hold(1686,Mid.value(28));
            // 第 8 行数据
            // 料长
            write_into_PLC_32_Hold(1614,Mid.value(29));
            // 左角度
            if(Mid.value(30) == "45.0")
            {
                write_into_PLC_16_Hold(1654,"0");
            }
            else if(Mid.value(30) == "90.0")
            {
                write_into_PLC_16_Hold(1654,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1654,"0");
            }
            // 右角度
            if(Mid.value(31) == "45.0")
            {
                write_into_PLC_16_Hold(1655,"0");
            }
            else if(Mid.value(31) == "90.0")
            {
                write_into_PLC_16_Hold(1655,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1655,"0");
            }
            // 切割数量
            write_into_PLC_16_Hold(1687,Mid.value(32));
            // 第 9 行数据
            // 料长
            write_into_PLC_32_Hold(1616,Mid.value(33));
            // 左角度
            if(Mid.value(34) == "45.0")
            {
                write_into_PLC_16_Hold(1656,"0");
            }
            else if(Mid.value(34) == "90.0")
            {
                write_into_PLC_16_Hold(1656,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1656,"0");
            }
            // 右角度
            if(Mid.value(35) == "45.0")
            {
                write_into_PLC_16_Hold(1657,"0");
            }
            else if(Mid.value(35) == "90.0")
            {
                write_into_PLC_16_Hold(1657,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1657,"0");
            }
            // 切割数量
            write_into_PLC_16_Hold(1688,Mid.value(36));
            // 第 10行数据
            // 料长
            write_into_PLC_32_Hold(1618,Mid.value(37));
            // 左角度
            if(Mid.value(38) == "45.0")
            {
                write_into_PLC_16_Hold(1658,"0");
            }
            else if(Mid.value(38) == "90.0")
            {
                write_into_PLC_16_Hold(1658,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1658,"0");
            }
            // 右角度
            if(Mid.value(39) == "45.0")
            {
                write_into_PLC_16_Hold(1659,"0");
            }
            else if(Mid.value(39) == "90.0")
            {
                write_into_PLC_16_Hold(1659,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1659,"0");
            }
            // 切割数量
            write_into_PLC_16_Hold(1689,Mid.value(40));
            // 第 11 行数据
            // 料长
            write_into_PLC_32_Hold(1620,Mid.value(41));
            // 左角度
            if(Mid.value(42) == "45.0")
            {
                write_into_PLC_16_Hold(1660,"0");
            }
            else if(Mid.value(42) == "90.0")
            {
                write_into_PLC_16_Hold(1660,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1660,"0");
            }
            // 右角度
            if(Mid.value(43) == "45.0")
            {
                write_into_PLC_16_Hold(1661,"0");
            }
            else if(Mid.value(43) == "90.0")
            {
                write_into_PLC_16_Hold(1661,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1661,"0");
            }
            // 切割数量
            write_into_PLC_16_Hold(1690,Mid.value(44));
            // 第 12 行数据
            // 料长
            write_into_PLC_32_Hold(1622,Mid.value(45));
            // 左角度
            if(Mid.value(46) == "45.0")
            {
                write_into_PLC_16_Hold(1662,"0");
            }
            else if(Mid.value(46) == "90.0")
            {
                write_into_PLC_16_Hold(1662,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1662,"0");
            }
            // 右角度
            if(Mid.value(47) == "45.0")
            {
                write_into_PLC_16_Hold(1663,"0");
            }
            else if(Mid.value(47) == "90.0")
            {
                write_into_PLC_16_Hold(1663,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1663,"0");
            }
            // 切割数量
            write_into_PLC_16_Hold(1691,Mid.value(48));
            // 第 13 行数据
            // 料长
            write_into_PLC_32_Hold(1624,Mid.value(49));
            // 左角度
            if(Mid.value(50) == "45.0")
            {
                write_into_PLC_16_Hold(1664,"0");
            }
            else if(Mid.value(50) == "90.0")
            {
                write_into_PLC_16_Hold(1664,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1664,"0");
            }
            // 右角度
            if(Mid.value(51) == "45.0")
            {
                write_into_PLC_16_Hold(1665,"0");
            }
            else if(Mid.value(51) == "90.0")
            {
                write_into_PLC_16_Hold(1665,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1665,"0");
            }
            // 切割数量
            write_into_PLC_16_Hold(1692,Mid.value(52));
            // 第 14 行数据
            // 料长
            write_into_PLC_32_Hold(1626,Mid.value(53));
            // 左角度
            if(Mid.value(54) == "45.0")
            {
                write_into_PLC_16_Hold(1666,"0");
            }
            else if(Mid.value(54) == "90.0")
            {
                write_into_PLC_16_Hold(1666,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1666,"0");
            }
            // 右角度
            if(Mid.value(55) == "45.0")
            {
                write_into_PLC_16_Hold(1667,"0");
            }
            else if(Mid.value(55) == "90.0")
            {
                write_into_PLC_16_Hold(1667,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1667,"0");
            }
            // 切割数量
            write_into_PLC_16_Hold(1693,Mid.value(56));
            // 第 15 行数据
            // 料长
            write_into_PLC_32_Hold(1628,Mid.value(57));
            // 左角度
            if(Mid.value(58) == "45.0")
            {
                write_into_PLC_16_Hold(1668,"0");
            }
            else if(Mid.value(58) == "90.0")
            {
                write_into_PLC_16_Hold(1668,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1668,"0");
            }
            // 右角度
            if(Mid.value(59) == "45.0")
            {
                write_into_PLC_16_Hold(1669,"0");
            }
            else if(Mid.value(59) == "90.0")
            {
                write_into_PLC_16_Hold(1669,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1669,"0");
            }
            // 切割数量
            write_into_PLC_16_Hold(1694,Mid.value(60));
            // 第 16 行数据
            // 料长
            write_into_PLC_32_Hold(1630,Mid.value(61));
            // 左角度
            if(Mid.value(62) == "45.0")
            {
                write_into_PLC_16_Hold(1670,"0");
            }
            else if(Mid.value(62) == "90.0")
            {
                write_into_PLC_16_Hold(1670,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1670,"0");
            }
            // 右角度
            if(Mid.value(63) == "45.0")
            {
                write_into_PLC_16_Hold(1671,"0");
            }
            else if(Mid.value(63) == "90.0")
            {
                write_into_PLC_16_Hold(1671,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1671,"0");
            }
            // 切割数量
            write_into_PLC_16_Hold(1695,Mid.value(64));
            // 第 17 行数据
            // 料长
            write_into_PLC_32_Hold(1632,Mid.value(65));
            // 左角度
            if(Mid.value(66) == "45.0")
            {
                write_into_PLC_16_Hold(1672,"0");
            }
            else if(Mid.value(66) == "90.0")
            {
                write_into_PLC_16_Hold(1672,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1672,"0");
            }
            // 右角度
            if(Mid.value(67) == "45.0")
            {
                write_into_PLC_16_Hold(1673,"0");
            }
            else if(Mid.value(67) == "90.0")
            {
                write_into_PLC_16_Hold(1673,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1673,"0");
            }
            // 切割数量
            write_into_PLC_16_Hold(1696,Mid.value(58));
            // 第 18 行数据
            // 料长
            write_into_PLC_32_Hold(1634,Mid.value(59));
            // 左角度
            if(Mid.value(60) == "45.0")
            {
                write_into_PLC_16_Hold(1674,"0");
            }
            else if(Mid.value(60) == "90.0")
            {
                write_into_PLC_16_Hold(1674,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1674,"0");
            }
            // 右角度
            if(Mid.value(61) == "45.0")
            {
                write_into_PLC_16_Hold(1675,"0");
            }
            else if(Mid.value(61) == "90.0")
            {
                write_into_PLC_16_Hold(1675,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1675,"0");
            }
            // 切割数量
            write_into_PLC_16_Hold(1697,Mid.value(62));
            // 第 19 行数据
            // 料长
            write_into_PLC_32_Hold(1636,Mid.value(63));
            // 左角度
            if(Mid.value(64) == "45.0")
            {
                write_into_PLC_16_Hold(1676,"0");
            }
            else if(Mid.value(64) == "90.0")
            {
                write_into_PLC_16_Hold(1676,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1676,"0");
            }
            // 右角度
            if(Mid.value(65) == "45.0")
            {
                write_into_PLC_16_Hold(1677,"0");
            }
            else if(Mid.value(65) == "90.0")
            {
                write_into_PLC_16_Hold(1677,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1677,"0");
            }
            // 切割数量
            write_into_PLC_16_Hold(1698,Mid.value(66));
            // 第 20 行数据
            // 料长
            write_into_PLC_32_Hold(1638,Mid.value(67));
            // 左角度
            if(Mid.value(68) == "45.0")
            {
                write_into_PLC_16_Hold(1678,"0");
            }
            else if(Mid.value(68) == "90.0")
            {
                write_into_PLC_16_Hold(1678,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1678,"0");
            }
            // 右角度
            if(Mid.value(69) == "45.0")
            {
                write_into_PLC_16_Hold(1679,"0");
            }
            else if(Mid.value(69) == "90.0")
            {
                write_into_PLC_16_Hold(1679,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1679,"0");
            }
            // 切割数量
            write_into_PLC_16_Hold(1699,Mid.value(70));
        }
        else if(Mid.length() == 63)
        {
            // qDebug()<<"速制二维码 - 类型3";
            // 第 1 行数据
            // 料长
            write_into_PLC_32_Hold(1600,Mid.value(1));
            // 左角度
            if(Mid.value(2) == "45.0")
            {
                write_into_PLC_16_Hold(1640,"0");
            }
            else if(Mid.value(2) == "90.0")
            {
                write_into_PLC_16_Hold(1640,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1640,"0");
            }
            // 右角度
            if(Mid.value(3) == "45.0")
            {
                write_into_PLC_16_Hold(1641,"0");
            }
            else if(Mid.value(3) == "90.0")
            {
                write_into_PLC_16_Hold(1641,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1641,"0");
            }
            // 切割数量
            write_into_PLC_16_Hold(1680,Mid.value(4));
            // 第 2 行数据
            // 料长
            write_into_PLC_32_Hold(1602,Mid.value(5));
            // 左角度
            if(Mid.value(6) == "45.0")
            {
                write_into_PLC_16_Hold(1642,"0");
            }
            else if(Mid.value(6) == "90.0")
            {
                write_into_PLC_16_Hold(1642,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1642,"0");
            }
            // 右角度
            if(Mid.value(7) == "45.0")
            {
                write_into_PLC_16_Hold(1643,"0");
            }
            else if(Mid.value(7) == "90.0")
            {
                write_into_PLC_16_Hold(1643,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1643,"0");
            }
            // 切割数量
            write_into_PLC_16_Hold(1681,Mid.value(8));
            // 第 3 行数据
            // 料长
            write_into_PLC_32_Hold(1604,Mid.value(9));
            // 左角度
            if(Mid.value(10) == "45.0")
            {
                write_into_PLC_16_Hold(1644,"0");
            }
            else if(Mid.value(10) == "90.0")
            {
                write_into_PLC_16_Hold(1644,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1644,"0");
            }
            // 右角度
            if(Mid.value(11) == "45.0")
            {
                write_into_PLC_16_Hold(1645,"0");
            }
            else if(Mid.value(11) == "90.0")
            {
                write_into_PLC_16_Hold(1645,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1645,"0");
            }
            // 切割数量
            write_into_PLC_16_Hold(1682,Mid.value(12));
            // 第 4 行数据
            // 料长
            write_into_PLC_32_Hold(1606,Mid.value(13));
            // 左角度
            if(Mid.value(14) == "45.0")
            {
                write_into_PLC_16_Hold(1646,"0");
            }
            else if(Mid.value(14) == "90.0")
            {
                write_into_PLC_16_Hold(1646,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1646,"0");
            }
            // 右角度
            if(Mid.value(15) == "45.0")
            {
                write_into_PLC_16_Hold(1647,"0");
            }
            else if(Mid.value(15) == "90.0")
            {
                write_into_PLC_16_Hold(1647,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1647,"0");
            }
            // 切割数量
            write_into_PLC_16_Hold(1683,Mid.value(16));
            // 第 5 行数据
            // 料长
            write_into_PLC_32_Hold(1608,Mid.value(17));
            // 左角度
            if(Mid.value(18) == "45.0")
            {
                write_into_PLC_16_Hold(1648,"0");
            }
            else if(Mid.value(18) == "90.0")
            {
                write_into_PLC_16_Hold(1648,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1648,"0");
            }
            // 右角度
            if(Mid.value(19) == "45.0")
            {
                write_into_PLC_16_Hold(1649,"0");
            }
            else if(Mid.value(19) == "90.0")
            {
                write_into_PLC_16_Hold(1649,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1649,"0");
            }
            // 切割数量
            write_into_PLC_16_Hold(1684,Mid.value(20));
            // 第 6 行数据
            // 料长
            write_into_PLC_32_Hold(1610,Mid.value(21));
            // 左角度
            if(Mid.value(22) == "45.0")
            {
                write_into_PLC_16_Hold(1650,"0");
            }
            else if(Mid.value(22) == "90.0")
            {
                write_into_PLC_16_Hold(1650,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1650,"0");
            }
            // 右角度
            if(Mid.value(23) == "45.0")
            {
                write_into_PLC_16_Hold(1651,"0");
            }
            else if(Mid.value(23) == "90.0")
            {
                write_into_PLC_16_Hold(1651,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1651,"0");
            }
            // 切割数量
            write_into_PLC_16_Hold(1685,Mid.value(24));
            // 第 7 行数据
            // 料长
            write_into_PLC_32_Hold(1612,Mid.value(25));
            // 左角度
            if(Mid.value(26) == "45.0")
            {
                write_into_PLC_16_Hold(1652,"0");
            }
            else if(Mid.value(26) == "90.0")
            {
                write_into_PLC_16_Hold(1652,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1652,"0");
            }
            // 右角度
            if(Mid.value(27) == "45.0")
            {
                write_into_PLC_16_Hold(1653,"0");
            }
            else if(Mid.value(27) == "90.0")
            {
                write_into_PLC_16_Hold(1653,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1653,"0");
            }
            // 切割数量
            write_into_PLC_16_Hold(1686,Mid.value(28));
            // 第 8 行数据
            // 料长
            write_into_PLC_32_Hold(1614,Mid.value(29));
            // 左角度
            if(Mid.value(30) == "45.0")
            {
                write_into_PLC_16_Hold(1654,"0");
            }
            else if(Mid.value(30) == "90.0")
            {
                write_into_PLC_16_Hold(1654,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1654,"0");
            }
            // 右角度
            if(Mid.value(31) == "45.0")
            {
                write_into_PLC_16_Hold(1655,"0");
            }
            else if(Mid.value(31) == "90.0")
            {
                write_into_PLC_16_Hold(1655,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1655,"0");
            }
            // 切割数量
            write_into_PLC_16_Hold(1687,Mid.value(32));
            // 第 9 行数据
            // 料长
            write_into_PLC_32_Hold(1616,Mid.value(33));
            // 左角度
            if(Mid.value(34) == "45.0")
            {
                write_into_PLC_16_Hold(1656,"0");
            }
            else if(Mid.value(34) == "90.0")
            {
                write_into_PLC_16_Hold(1656,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1656,"0");
            }
            // 右角度
            if(Mid.value(35) == "45.0")
            {
                write_into_PLC_16_Hold(1657,"0");
            }
            else if(Mid.value(35) == "90.0")
            {
                write_into_PLC_16_Hold(1657,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1657,"0");
            }
            // 切割数量
            write_into_PLC_16_Hold(1688,Mid.value(36));
            // 第 10行数据
            // 料长
            write_into_PLC_32_Hold(1618,Mid.value(37));
            // 左角度
            if(Mid.value(38) == "45.0")
            {
                write_into_PLC_16_Hold(1658,"0");
            }
            else if(Mid.value(38) == "90.0")
            {
                write_into_PLC_16_Hold(1658,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1658,"0");
            }
            // 右角度
            if(Mid.value(39) == "45.0")
            {
                write_into_PLC_16_Hold(1659,"0");
            }
            else if(Mid.value(39) == "90.0")
            {
                write_into_PLC_16_Hold(1659,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1659,"0");
            }
            // 切割数量
            write_into_PLC_16_Hold(1689,Mid.value(40));
            // 第 11 行数据
            // 料长
            write_into_PLC_32_Hold(1620,Mid.value(41));
            // 左角度
            if(Mid.value(42) == "45.0")
            {
                write_into_PLC_16_Hold(1660,"0");
            }
            else if(Mid.value(42) == "90.0")
            {
                write_into_PLC_16_Hold(1660,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1660,"0");
            }
            // 右角度
            if(Mid.value(43) == "45.0")
            {
                write_into_PLC_16_Hold(1661,"0");
            }
            else if(Mid.value(43) == "90.0")
            {
                write_into_PLC_16_Hold(1661,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1661,"0");
            }
            // 切割数量
            write_into_PLC_16_Hold(1690,Mid.value(44));
            // 第 12 行数据
            // 料长
            write_into_PLC_32_Hold(1622,Mid.value(45));
            // 左角度
            if(Mid.value(46) == "45.0")
            {
                write_into_PLC_16_Hold(1662,"0");
            }
            else if(Mid.value(46) == "90.0")
            {
                write_into_PLC_16_Hold(1662,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1662,"0");
            }
            // 右角度
            if(Mid.value(47) == "45.0")
            {
                write_into_PLC_16_Hold(1663,"0");
            }
            else if(Mid.value(47) == "90.0")
            {
                write_into_PLC_16_Hold(1663,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1663,"0");
            }
            // 切割数量
            write_into_PLC_16_Hold(1691,Mid.value(48));
            // 第 13 行数据
            // 料长
            write_into_PLC_32_Hold(1624,Mid.value(49));
            // 左角度
            if(Mid.value(50) == "45.0")
            {
                write_into_PLC_16_Hold(1664,"0");
            }
            else if(Mid.value(50) == "90.0")
            {
                write_into_PLC_16_Hold(1664,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1664,"0");
            }
            // 右角度
            if(Mid.value(51) == "45.0")
            {
                write_into_PLC_16_Hold(1665,"0");
            }
            else if(Mid.value(51) == "90.0")
            {
                write_into_PLC_16_Hold(1665,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1665,"0");
            }
            // 切割数量
            write_into_PLC_16_Hold(1692,Mid.value(52));
            // 第 14 行数据
            // 料长
            write_into_PLC_32_Hold(1626,Mid.value(53));
            // 左角度
            if(Mid.value(54) == "45.0")
            {
                write_into_PLC_16_Hold(1666,"0");
            }
            else if(Mid.value(54) == "90.0")
            {
                write_into_PLC_16_Hold(1666,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1666,"0");
            }
            // 右角度
            if(Mid.value(55) == "45.0")
            {
                write_into_PLC_16_Hold(1667,"0");
            }
            else if(Mid.value(55) == "90.0")
            {
                write_into_PLC_16_Hold(1667,"1");
            }
            else
            {
                write_into_PLC_16_Hold(1667,"0");
            }
            // 切割数量
            write_into_PLC_16_Hold(1693,Mid.value(56));

            write_into_PLC_32_Hold(1628,"0");
            write_into_PLC_16_Hold(1668,"0");
            write_into_PLC_16_Hold(1669,"0");
            write_into_PLC_16_Hold(1694,"0");
            write_into_PLC_16_Hold(1714,"0");

            write_into_PLC_32_Hold(1630,"0");
            write_into_PLC_16_Hold(1670,"0");
            write_into_PLC_16_Hold(1671,"0");
            write_into_PLC_16_Hold(1695,"0");
            write_into_PLC_16_Hold(1715,"0");

            write_into_PLC_32_Hold(1632,"0");
            write_into_PLC_16_Hold(1672,"0");
            write_into_PLC_16_Hold(1673,"0");
            write_into_PLC_16_Hold(1696,"0");
            write_into_PLC_16_Hold(1716,"0");

            write_into_PLC_32_Hold(1634,"0");
            write_into_PLC_16_Hold(1674,"0");
            write_into_PLC_16_Hold(1675,"0");
            write_into_PLC_16_Hold(1697,"0");
            write_into_PLC_16_Hold(1717,"0");

            write_into_PLC_32_Hold(1636,"0");
            write_into_PLC_16_Hold(1676,"0");
            write_into_PLC_16_Hold(1677,"0");
            write_into_PLC_16_Hold(1698,"0");
            write_into_PLC_16_Hold(1718,"0");

            write_into_PLC_32_Hold(1638,"0");
            write_into_PLC_16_Hold(1678,"0");
            write_into_PLC_16_Hold(1679,"0");
            write_into_PLC_16_Hold(1699,"0");
            write_into_PLC_16_Hold(1719,"0");

        }
        break;
    }
    case 3 :{
        qDebug()<<"画门窗离线二维码解析";
        // qDebug()<<"触发 画门窗二维码 解析";
        // qDebug()<<"读取到的结果:"<<*result;
        QList Mid1 = (recvResult).split(';');
        // qDebug()<<"拆分数据第一部分:"<<Mid1.value(1);
        QList Mid2 = Mid1.value(1).split(',');
        // qDebug()<<"数据长度:"<<Mid2.length();
        // qDebug()<<"有效数据组数:"<<Mid2.length()/4;
        int enableCount = Mid2.length()/4;
        switch(enableCount)
        {
        case 1:
        {
            write_into_PLC_32_Hold(1600,Mid2.value(0));
            if(Mid2.value(1) == "45")
            {
                write_into_PLC_16_Hold(1640,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1640,"1");
            }
            if(Mid2.value(2) == "45")
            {
                write_into_PLC_16_Hold(1641,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1641,"1");
            }
            write_into_PLC_16_Hold(1680,Mid2.value(3));

            write_into_PLC_32_Hold(1602,"");
            write_into_PLC_16_Hold(1642,"0");
            write_into_PLC_16_Hold(1643,"0");
            write_into_PLC_16_Hold(1681,"0");
            write_into_PLC_32_Hold(1604,"");
            write_into_PLC_16_Hold(1644,"0");
            write_into_PLC_16_Hold(1645,"0");
            write_into_PLC_16_Hold(1682,"0");
            write_into_PLC_32_Hold(1606,"");
            write_into_PLC_16_Hold(1646,"0");
            write_into_PLC_16_Hold(1647,"0");
            write_into_PLC_16_Hold(1683,"0");
            write_into_PLC_32_Hold(1608,"");
            write_into_PLC_16_Hold(1648,"0");
            write_into_PLC_16_Hold(1649,"0");
            write_into_PLC_16_Hold(1684,"0");
            write_into_PLC_32_Hold(1608,"");
            write_into_PLC_16_Hold(1648,"0");
            write_into_PLC_16_Hold(1649,"0");
            write_into_PLC_16_Hold(1684,"0");
            write_into_PLC_32_Hold(1610,"");
            write_into_PLC_16_Hold(1650,"0");
            write_into_PLC_16_Hold(1651,"0");
            write_into_PLC_16_Hold(1685,"0");
            write_into_PLC_32_Hold(1612,"");
            write_into_PLC_16_Hold(1652,"0");
            write_into_PLC_16_Hold(1653,"0");
            write_into_PLC_16_Hold(1686,"0");
            write_into_PLC_32_Hold(1614,"");
            write_into_PLC_16_Hold(1654,"0");
            write_into_PLC_16_Hold(1655,"0");
            write_into_PLC_16_Hold(1687,"0");
            write_into_PLC_32_Hold(1616,"");
            write_into_PLC_16_Hold(1656,"0");
            write_into_PLC_16_Hold(1657,"0");
            write_into_PLC_16_Hold(1688,"0");
            write_into_PLC_32_Hold(1618,"");
            write_into_PLC_16_Hold(1658,"0");
            write_into_PLC_16_Hold(1659,"0");
            write_into_PLC_16_Hold(1689,"0");


            break;
        }
        case 2:
        {

            write_into_PLC_32_Hold(1600,Mid2.value(0));
            if(Mid2.value(1) == "45")
            {
                write_into_PLC_16_Hold(1640,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1640,"1");
            }
            if(Mid2.value(2) == "45")
            {
                write_into_PLC_16_Hold(1641,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1641,"1");
            }
            write_into_PLC_16_Hold(1680,Mid2.value(3));

            write_into_PLC_32_Hold(1602,Mid2.value(4));
            if(Mid2.value(5) == "45")
            {
                write_into_PLC_16_Hold(1642,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1642,"1");
            }
            if(Mid2.value(6) == "45")
            {
                write_into_PLC_16_Hold(1643,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1643,"1");
            }
            write_into_PLC_16_Hold(1681,Mid2.value(7));

            write_into_PLC_32_Hold(1604,"");
            write_into_PLC_16_Hold(1644,"0");
            write_into_PLC_16_Hold(1645,"0");
            write_into_PLC_16_Hold(1682,"0");
            write_into_PLC_32_Hold(1606,"");
            write_into_PLC_16_Hold(1646,"0");
            write_into_PLC_16_Hold(1647,"0");
            write_into_PLC_16_Hold(1683,"0");
            write_into_PLC_32_Hold(1608,"");
            write_into_PLC_16_Hold(1648,"0");
            write_into_PLC_16_Hold(1649,"0");
            write_into_PLC_16_Hold(1684,"0");
            write_into_PLC_32_Hold(1608,"");
            write_into_PLC_16_Hold(1648,"0");
            write_into_PLC_16_Hold(1649,"0");
            write_into_PLC_16_Hold(1684,"0");
            write_into_PLC_32_Hold(1610,"");
            write_into_PLC_16_Hold(1650,"0");
            write_into_PLC_16_Hold(1651,"0");
            write_into_PLC_16_Hold(1685,"0");
            write_into_PLC_32_Hold(1612,"");
            write_into_PLC_16_Hold(1652,"0");
            write_into_PLC_16_Hold(1653,"0");
            write_into_PLC_16_Hold(1686,"0");
            write_into_PLC_32_Hold(1614,"");
            write_into_PLC_16_Hold(1654,"0");
            write_into_PLC_16_Hold(1655,"0");
            write_into_PLC_16_Hold(1687,"0");
            write_into_PLC_32_Hold(1616,"");
            write_into_PLC_16_Hold(1656,"0");
            write_into_PLC_16_Hold(1657,"0");
            write_into_PLC_16_Hold(1688,"0");
            write_into_PLC_32_Hold(1618,"");
            write_into_PLC_16_Hold(1658,"0");
            write_into_PLC_16_Hold(1659,"0");
            write_into_PLC_16_Hold(1689,"0");

            break;
        }
        case 3:
        {

            write_into_PLC_32_Hold(1600,Mid2.value(0));
            if(Mid2.value(1) == "45")
            {
                write_into_PLC_16_Hold(1640,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1640,"1");
            }
            if(Mid2.value(2) == "45")
            {
                write_into_PLC_16_Hold(1641,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1641,"1");
            }
            write_into_PLC_16_Hold(1680,Mid2.value(3));

            write_into_PLC_32_Hold(1602,Mid2.value(4));
            if(Mid2.value(5) == "45")
            {
                write_into_PLC_16_Hold(1642,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1642,"1");
            }
            if(Mid2.value(6) == "45")
            {
                write_into_PLC_16_Hold(1643,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1643,"1");
            }
            write_into_PLC_16_Hold(1681,Mid2.value(7));

            write_into_PLC_32_Hold(1604,Mid2.value(8));
            if(Mid2.value(9) == "45")
            {
                write_into_PLC_16_Hold(1644,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1644,"1");
            }
            if(Mid2.value(10) == "45")
            {
                write_into_PLC_16_Hold(1645,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1645,"1");
            }
            write_into_PLC_16_Hold(1682,Mid2.value(11));

            write_into_PLC_32_Hold(1606,"");
            write_into_PLC_16_Hold(1646,"0");
            write_into_PLC_16_Hold(1647,"0");
            write_into_PLC_16_Hold(1683,"0");
            write_into_PLC_32_Hold(1608,"");
            write_into_PLC_16_Hold(1648,"0");
            write_into_PLC_16_Hold(1649,"0");
            write_into_PLC_16_Hold(1684,"0");
            write_into_PLC_32_Hold(1608,"");
            write_into_PLC_16_Hold(1648,"0");
            write_into_PLC_16_Hold(1649,"0");
            write_into_PLC_16_Hold(1684,"0");
            write_into_PLC_32_Hold(1610,"");
            write_into_PLC_16_Hold(1650,"0");
            write_into_PLC_16_Hold(1651,"0");
            write_into_PLC_16_Hold(1685,"0");
            write_into_PLC_32_Hold(1612,"");
            write_into_PLC_16_Hold(1652,"0");
            write_into_PLC_16_Hold(1653,"0");
            write_into_PLC_16_Hold(1686,"0");
            write_into_PLC_32_Hold(1614,"");
            write_into_PLC_16_Hold(1654,"0");
            write_into_PLC_16_Hold(1655,"0");
            write_into_PLC_16_Hold(1687,"0");
            write_into_PLC_32_Hold(1616,"");
            write_into_PLC_16_Hold(1656,"0");
            write_into_PLC_16_Hold(1657,"0");
            write_into_PLC_16_Hold(1688,"0");
            write_into_PLC_32_Hold(1618,"");
            write_into_PLC_16_Hold(1658,"0");
            write_into_PLC_16_Hold(1659,"0");
            write_into_PLC_16_Hold(1689,"0");


            break;
        }
        case 4:
        {

            write_into_PLC_32_Hold(1600,Mid2.value(0));
            if(Mid2.value(1) == "45")
            {
                write_into_PLC_16_Hold(1640,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1640,"1");
            }
            if(Mid2.value(2) == "45")
            {
                write_into_PLC_16_Hold(1641,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1641,"1");
            }
            write_into_PLC_16_Hold(1680,Mid2.value(3));

            write_into_PLC_32_Hold(1602,Mid2.value(4));
            if(Mid2.value(5) == "45")
            {
                write_into_PLC_16_Hold(1642,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1642,"1");
            }
            if(Mid2.value(6) == "45")
            {
                write_into_PLC_16_Hold(1643,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1643,"1");
            }
            write_into_PLC_16_Hold(1681,Mid2.value(7));

            write_into_PLC_32_Hold(1604,Mid2.value(8));
            if(Mid2.value(9) == "45")
            {
                write_into_PLC_16_Hold(1644,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1644,"1");
            }
            if(Mid2.value(10) == "45")
            {
                write_into_PLC_16_Hold(1645,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1645,"1");
            }
            write_into_PLC_16_Hold(1682,Mid2.value(11));

            write_into_PLC_32_Hold(1606,Mid2.value(12));
            if(Mid2.value(13) == "45")
            {
                write_into_PLC_16_Hold(1646,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1646,"1");
            }
            if(Mid2.value(14) == "45")
            {
                write_into_PLC_16_Hold(1647,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1647,"1");
            }
            write_into_PLC_16_Hold(1683,Mid2.value(15));

            write_into_PLC_32_Hold(1608,"");
            write_into_PLC_16_Hold(1648,"0");
            write_into_PLC_16_Hold(1649,"0");
            write_into_PLC_16_Hold(1684,"0");
            write_into_PLC_32_Hold(1610,"");
            write_into_PLC_16_Hold(1650,"0");
            write_into_PLC_16_Hold(1651,"0");
            write_into_PLC_16_Hold(1685,"0");
            write_into_PLC_32_Hold(1612,"");
            write_into_PLC_16_Hold(1652,"0");
            write_into_PLC_16_Hold(1653,"0");
            write_into_PLC_16_Hold(1686,"0");
            write_into_PLC_32_Hold(1614,"");
            write_into_PLC_16_Hold(1654,"0");
            write_into_PLC_16_Hold(1655,"0");
            write_into_PLC_16_Hold(1687,"0");
            write_into_PLC_32_Hold(1616,"");
            write_into_PLC_16_Hold(1656,"0");
            write_into_PLC_16_Hold(1657,"0");
            write_into_PLC_16_Hold(1688,"0");
            write_into_PLC_32_Hold(1618,"");
            write_into_PLC_16_Hold(1658,"0");
            write_into_PLC_16_Hold(1659,"0");
            write_into_PLC_16_Hold(1689,"0");

            break;
        }
        case 5:
        {

            write_into_PLC_32_Hold(1600,Mid2.value(0));
            if(Mid2.value(1) == "45")
            {
                write_into_PLC_16_Hold(1640,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1640,"1");
            }
            if(Mid2.value(2) == "45")
            {
                write_into_PLC_16_Hold(1641,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1641,"1");
            }
            write_into_PLC_16_Hold(1680,Mid2.value(3));

            write_into_PLC_32_Hold(1602,Mid2.value(4));
            if(Mid2.value(5) == "45")
            {
                write_into_PLC_16_Hold(1642,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1642,"1");
            }
            if(Mid2.value(6) == "45")
            {
                write_into_PLC_16_Hold(1643,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1643,"1");
            }
            write_into_PLC_16_Hold(1681,Mid2.value(7));

            write_into_PLC_32_Hold(1604,Mid2.value(8));
            if(Mid2.value(9) == "45")
            {
                write_into_PLC_16_Hold(1644,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1644,"1");
            }
            if(Mid2.value(10) == "45")
            {
                write_into_PLC_16_Hold(1645,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1645,"1");
            }
            write_into_PLC_16_Hold(1682,Mid2.value(11));

            write_into_PLC_32_Hold(1606,Mid2.value(12));
            if(Mid2.value(13) == "45")
            {
                write_into_PLC_16_Hold(1646,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1646,"1");
            }
            if(Mid2.value(14) == "45")
            {
                write_into_PLC_16_Hold(1647,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1647,"1");
            }
            write_into_PLC_16_Hold(1683,Mid2.value(15));

            write_into_PLC_32_Hold(1608,Mid2.value(16));
            if(Mid2.value(17) == "45")
            {
                write_into_PLC_16_Hold(1648,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1648,"1");
            }
            if(Mid2.value(18) == "45")
            {
                write_into_PLC_16_Hold(1649,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1649,"1");
            }
            write_into_PLC_16_Hold(1684,Mid2.value(19));

            write_into_PLC_32_Hold(1610,"");
            write_into_PLC_16_Hold(1650,"0");
            write_into_PLC_16_Hold(1651,"0");
            write_into_PLC_16_Hold(1685,"0");
            write_into_PLC_32_Hold(1612,"");
            write_into_PLC_16_Hold(1652,"0");
            write_into_PLC_16_Hold(1653,"0");
            write_into_PLC_16_Hold(1686,"0");
            write_into_PLC_32_Hold(1614,"");
            write_into_PLC_16_Hold(1654,"0");
            write_into_PLC_16_Hold(1655,"0");
            write_into_PLC_16_Hold(1687,"0");
            write_into_PLC_32_Hold(1616,"");
            write_into_PLC_16_Hold(1656,"0");
            write_into_PLC_16_Hold(1657,"0");
            write_into_PLC_16_Hold(1688,"0");
            write_into_PLC_32_Hold(1618,"");
            write_into_PLC_16_Hold(1658,"0");
            write_into_PLC_16_Hold(1659,"0");
            write_into_PLC_16_Hold(1689,"0");

            break;
        }
        case 6:
        {

            write_into_PLC_32_Hold(1600,Mid2.value(0));
            if(Mid2.value(1) == "45")
            {
                write_into_PLC_16_Hold(1640,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1640,"1");
            }
            if(Mid2.value(2) == "45")
            {
                write_into_PLC_16_Hold(1641,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1641,"1");
            }
            write_into_PLC_16_Hold(1680,Mid2.value(3));

            write_into_PLC_32_Hold(1602,Mid2.value(4));
            if(Mid2.value(5) == "45")
            {
                write_into_PLC_16_Hold(1642,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1642,"1");
            }
            if(Mid2.value(6) == "45")
            {
                write_into_PLC_16_Hold(1643,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1643,"1");
            }
            write_into_PLC_16_Hold(1681,Mid2.value(7));

            write_into_PLC_32_Hold(1604,Mid2.value(8));
            if(Mid2.value(9) == "45")
            {
                write_into_PLC_16_Hold(1644,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1644,"1");
            }
            if(Mid2.value(10) == "45")
            {
                write_into_PLC_16_Hold(1645,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1645,"1");
            }
            write_into_PLC_16_Hold(1682,Mid2.value(11));

            write_into_PLC_32_Hold(1606,Mid2.value(12));
            if(Mid2.value(13) == "45")
            {
                write_into_PLC_16_Hold(1646,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1646,"1");
            }
            if(Mid2.value(14) == "45")
            {
                write_into_PLC_16_Hold(1647,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1647,"1");
            }
            write_into_PLC_16_Hold(1683,Mid2.value(15));

            write_into_PLC_32_Hold(1608,Mid2.value(16));
            if(Mid2.value(17) == "45")
            {
                write_into_PLC_16_Hold(1648,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1648,"1");
            }
            if(Mid2.value(18) == "45")
            {
                write_into_PLC_16_Hold(1649,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1649,"1");
            }
            write_into_PLC_16_Hold(1684,Mid2.value(19));

            write_into_PLC_32_Hold(1610,Mid2.value(20));
            if(Mid2.value(21) == "45")
            {
                write_into_PLC_16_Hold(1650,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1650,"1");
            }
            if(Mid2.value(22) == "45")
            {
                write_into_PLC_16_Hold(1651,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1651,"1");
            }
            write_into_PLC_16_Hold(1685,Mid2.value(23));

            write_into_PLC_32_Hold(1612,"");
            write_into_PLC_16_Hold(1652,"0");
            write_into_PLC_16_Hold(1653,"0");
            write_into_PLC_16_Hold(1686,"0");
            write_into_PLC_32_Hold(1614,"");
            write_into_PLC_16_Hold(1654,"0");
            write_into_PLC_16_Hold(1655,"0");
            write_into_PLC_16_Hold(1687,"0");
            write_into_PLC_32_Hold(1616,"");
            write_into_PLC_16_Hold(1656,"0");
            write_into_PLC_16_Hold(1657,"0");
            write_into_PLC_16_Hold(1688,"0");
            write_into_PLC_32_Hold(1618,"");
            write_into_PLC_16_Hold(1658,"0");
            write_into_PLC_16_Hold(1659,"0");
            write_into_PLC_16_Hold(1689,"0");

            break;
        }
        case 7:
        {

            write_into_PLC_32_Hold(1600,Mid2.value(0));
            if(Mid2.value(1) == "45")
            {
                write_into_PLC_16_Hold(1640,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1640,"1");
            }
            if(Mid2.value(2) == "45")
            {
                write_into_PLC_16_Hold(1641,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1641,"1");
            }
            write_into_PLC_16_Hold(1680,Mid2.value(3));

            write_into_PLC_32_Hold(1602,Mid2.value(4));
            if(Mid2.value(5) == "45")
            {
                write_into_PLC_16_Hold(1642,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1642,"1");
            }
            if(Mid2.value(6) == "45")
            {
                write_into_PLC_16_Hold(1643,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1643,"1");
            }
            write_into_PLC_16_Hold(1681,Mid2.value(7));

            write_into_PLC_32_Hold(1604,Mid2.value(8));
            if(Mid2.value(9) == "45")
            {
                write_into_PLC_16_Hold(1644,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1644,"1");
            }
            if(Mid2.value(10) == "45")
            {
                write_into_PLC_16_Hold(1645,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1645,"1");
            }
            write_into_PLC_16_Hold(1682,Mid2.value(11));

            write_into_PLC_32_Hold(1606,Mid2.value(12));
            if(Mid2.value(13) == "45")
            {
                write_into_PLC_16_Hold(1646,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1646,"1");
            }
            if(Mid2.value(14) == "45")
            {
                write_into_PLC_16_Hold(1647,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1647,"1");
            }
            write_into_PLC_16_Hold(1683,Mid2.value(15));

            write_into_PLC_32_Hold(1608,Mid2.value(16));
            if(Mid2.value(17) == "45")
            {
                write_into_PLC_16_Hold(1648,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1648,"1");
            }
            if(Mid2.value(18) == "45")
            {
                write_into_PLC_16_Hold(1649,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1649,"1");
            }
            write_into_PLC_16_Hold(1684,Mid2.value(19));

            write_into_PLC_32_Hold(1610,Mid2.value(20));
            if(Mid2.value(21) == "45")
            {
                write_into_PLC_16_Hold(1650,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1650,"1");
            }
            if(Mid2.value(22) == "45")
            {
                write_into_PLC_16_Hold(1651,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1651,"1");
            }
            write_into_PLC_16_Hold(1685,Mid2.value(23));

            write_into_PLC_32_Hold(1612,Mid2.value(24));
            if(Mid2.value(25) == "45")
            {
                write_into_PLC_16_Hold(1652,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1652,"1");
            }
            if(Mid2.value(26) == "45")
            {
                write_into_PLC_16_Hold(1653,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1653,"1");
            }
            write_into_PLC_16_Hold(1686,Mid2.value(27));

            write_into_PLC_32_Hold(1614,"");
            write_into_PLC_16_Hold(1654,"0");
            write_into_PLC_16_Hold(1655,"0");
            write_into_PLC_16_Hold(1687,"0");
            write_into_PLC_32_Hold(1616,"");
            write_into_PLC_16_Hold(1656,"0");
            write_into_PLC_16_Hold(1657,"0");
            write_into_PLC_16_Hold(1688,"0");
            write_into_PLC_32_Hold(1618,"");
            write_into_PLC_16_Hold(1658,"0");
            write_into_PLC_16_Hold(1659,"0");
            write_into_PLC_16_Hold(1689,"0");


            break;

        }
        case 8:
        {

            write_into_PLC_32_Hold(1600,Mid2.value(0));
            if(Mid2.value(1) == "45")
            {
                write_into_PLC_16_Hold(1640,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1640,"1");
            }
            if(Mid2.value(2) == "45")
            {
                write_into_PLC_16_Hold(1641,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1641,"1");
            }
            write_into_PLC_16_Hold(1680,Mid2.value(3));

            write_into_PLC_32_Hold(1602,Mid2.value(4));
            if(Mid2.value(5) == "45")
            {
                write_into_PLC_16_Hold(1642,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1642,"1");
            }
            if(Mid2.value(6) == "45")
            {
                write_into_PLC_16_Hold(1643,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1643,"1");
            }
            write_into_PLC_16_Hold(1681,Mid2.value(7));

            write_into_PLC_32_Hold(1604,Mid2.value(8));
            if(Mid2.value(9) == "45")
            {
                write_into_PLC_16_Hold(1644,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1644,"1");
            }
            if(Mid2.value(10) == "45")
            {
                write_into_PLC_16_Hold(1645,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1645,"1");
            }
            write_into_PLC_16_Hold(1682,Mid2.value(11));

            write_into_PLC_32_Hold(1606,Mid2.value(12));
            if(Mid2.value(13) == "45")
            {
                write_into_PLC_16_Hold(1646,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1646,"1");
            }
            if(Mid2.value(14) == "45")
            {
                write_into_PLC_16_Hold(1647,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1647,"1");
            }
            write_into_PLC_16_Hold(1683,Mid2.value(15));

            write_into_PLC_32_Hold(1608,Mid2.value(16));
            if(Mid2.value(17) == "45")
            {
                write_into_PLC_16_Hold(1648,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1648,"1");
            }
            if(Mid2.value(18) == "45")
            {
                write_into_PLC_16_Hold(1649,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1649,"1");
            }
            write_into_PLC_16_Hold(1684,Mid2.value(19));

            write_into_PLC_32_Hold(1610,Mid2.value(20));
            if(Mid2.value(21) == "45")
            {
                write_into_PLC_16_Hold(1650,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1650,"1");
            }
            if(Mid2.value(22) == "45")
            {
                write_into_PLC_16_Hold(1651,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1651,"1");
            }
            write_into_PLC_16_Hold(1685,Mid2.value(23));

            write_into_PLC_32_Hold(1612,Mid2.value(24));
            if(Mid2.value(25) == "45")
            {
                write_into_PLC_16_Hold(1652,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1652,"1");
            }
            if(Mid2.value(26) == "45")
            {
                write_into_PLC_16_Hold(1653,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1653,"1");
            }
            write_into_PLC_16_Hold(1686,Mid2.value(27));

            write_into_PLC_32_Hold(1614,Mid2.value(28));
            if(Mid2.value(29) == "45")
            {
                write_into_PLC_16_Hold(1654,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1654,"1");
            }
            if(Mid2.value(30) == "45")
            {
                write_into_PLC_16_Hold(1655,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1655,"1");
            }
            write_into_PLC_16_Hold(1687,Mid2.value(31));

            write_into_PLC_32_Hold(1616,"");
            write_into_PLC_16_Hold(1656,"0");
            write_into_PLC_16_Hold(1657,"0");
            write_into_PLC_16_Hold(1688,"0");
            write_into_PLC_32_Hold(1618,"");
            write_into_PLC_16_Hold(1658,"0");
            write_into_PLC_16_Hold(1659,"0");
            write_into_PLC_16_Hold(1689,"0");

            break;
        }
        case 9:
        {

            write_into_PLC_32_Hold(1600,Mid2.value(0));
            if(Mid2.value(1) == "45")
            {
                write_into_PLC_16_Hold(1640,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1640,"1");
            }
            if(Mid2.value(2) == "45")
            {
                write_into_PLC_16_Hold(1641,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1641,"1");
            }
            write_into_PLC_16_Hold(1680,Mid2.value(3));

            write_into_PLC_32_Hold(1602,Mid2.value(4));
            if(Mid2.value(5) == "45")
            {
                write_into_PLC_16_Hold(1642,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1642,"1");
            }
            if(Mid2.value(6) == "45")
            {
                write_into_PLC_16_Hold(1643,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1643,"1");
            }
            write_into_PLC_16_Hold(1681,Mid2.value(7));

            write_into_PLC_32_Hold(1604,Mid2.value(8));
            if(Mid2.value(9) == "45")
            {
                write_into_PLC_16_Hold(1644,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1644,"1");
            }
            if(Mid2.value(10) == "45")
            {
                write_into_PLC_16_Hold(1645,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1645,"1");
            }
            write_into_PLC_16_Hold(1682,Mid2.value(11));

            write_into_PLC_32_Hold(1606,Mid2.value(12));
            if(Mid2.value(13) == "45")
            {
                write_into_PLC_16_Hold(1646,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1646,"1");
            }
            if(Mid2.value(14) == "45")
            {
                write_into_PLC_16_Hold(1647,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1647,"1");
            }
            write_into_PLC_16_Hold(1683,Mid2.value(15));

            write_into_PLC_32_Hold(1608,Mid2.value(16));
            if(Mid2.value(17) == "45")
            {
                write_into_PLC_16_Hold(1648,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1648,"1");
            }
            if(Mid2.value(18) == "45")
            {
                write_into_PLC_16_Hold(1649,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1649,"1");
            }
            write_into_PLC_16_Hold(1684,Mid2.value(19));

            write_into_PLC_32_Hold(1610,Mid2.value(20));
            if(Mid2.value(21) == "45")
            {
                write_into_PLC_16_Hold(1650,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1650,"1");
            }
            if(Mid2.value(22) == "45")
            {
                write_into_PLC_16_Hold(1651,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1651,"1");
            }
            write_into_PLC_16_Hold(1685,Mid2.value(23));

            write_into_PLC_32_Hold(1612,Mid2.value(24));
            if(Mid2.value(25) == "45")
            {
                write_into_PLC_16_Hold(1652,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1652,"1");
            }
            if(Mid2.value(26) == "45")
            {
                write_into_PLC_16_Hold(1653,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1653,"1");
            }
            write_into_PLC_16_Hold(1686,Mid2.value(27));

            write_into_PLC_32_Hold(1614,Mid2.value(28));
            if(Mid2.value(29) == "45")
            {
                write_into_PLC_16_Hold(1654,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1654,"1");
            }
            if(Mid2.value(30) == "45")
            {
                write_into_PLC_16_Hold(1655,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1655,"1");
            }
            write_into_PLC_16_Hold(1687,Mid2.value(31));

            write_into_PLC_32_Hold(1616,Mid2.value(32));
            if(Mid2.value(33) == "45")
            {
                write_into_PLC_16_Hold(1656,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1656,"1");
            }
            if(Mid2.value(34) == "45")
            {
                write_into_PLC_16_Hold(1657,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1657,"1");
            }
            write_into_PLC_16_Hold(1688,Mid2.value(35));


            write_into_PLC_32_Hold(1616,"");
            write_into_PLC_16_Hold(1656,"0");
            write_into_PLC_16_Hold(1657,"0");
            write_into_PLC_16_Hold(1688,"0");


            break;
        }
        case 10:
        {

            write_into_PLC_32_Hold(1600,Mid2.value(0));
            if(Mid2.value(1) == "45")
            {
                write_into_PLC_16_Hold(1640,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1640,"1");
            }
            if(Mid2.value(2) == "45")
            {
                write_into_PLC_16_Hold(1641,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1641,"1");
            }
            write_into_PLC_16_Hold(1680,Mid2.value(3));

            write_into_PLC_32_Hold(1602,Mid2.value(4));
            if(Mid2.value(5) == "45")
            {
                write_into_PLC_16_Hold(1642,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1642,"1");
            }
            if(Mid2.value(6) == "45")
            {
                write_into_PLC_16_Hold(1643,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1643,"1");
            }
            write_into_PLC_16_Hold(1681,Mid2.value(7));

            write_into_PLC_32_Hold(1604,Mid2.value(8));
            if(Mid2.value(9) == "45")
            {
                write_into_PLC_16_Hold(1644,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1644,"1");
            }
            if(Mid2.value(10) == "45")
            {
                write_into_PLC_16_Hold(1645,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1645,"1");
            }
            write_into_PLC_16_Hold(1682,Mid2.value(11));

            write_into_PLC_32_Hold(1606,Mid2.value(12));
            if(Mid2.value(13) == "45")
            {
                write_into_PLC_16_Hold(1646,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1646,"1");
            }
            if(Mid2.value(14) == "45")
            {
                write_into_PLC_16_Hold(1647,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1647,"1");
            }
            write_into_PLC_16_Hold(1683,Mid2.value(15));

            write_into_PLC_32_Hold(1608,Mid2.value(16));
            if(Mid2.value(17) == "45")
            {
                write_into_PLC_16_Hold(1648,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1648,"1");
            }
            if(Mid2.value(18) == "45")
            {
                write_into_PLC_16_Hold(1649,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1649,"1");
            }
            write_into_PLC_16_Hold(1684,Mid2.value(19));

            write_into_PLC_32_Hold(1610,Mid2.value(20));
            if(Mid2.value(21) == "45")
            {
                write_into_PLC_16_Hold(1650,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1650,"1");
            }
            if(Mid2.value(22) == "45")
            {
                write_into_PLC_16_Hold(1651,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1651,"1");
            }
            write_into_PLC_16_Hold(1685,Mid2.value(23));

            write_into_PLC_32_Hold(1612,Mid2.value(24));
            if(Mid2.value(25) == "45")
            {
                write_into_PLC_16_Hold(1652,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1652,"1");
            }
            if(Mid2.value(26) == "45")
            {
                write_into_PLC_16_Hold(1653,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1653,"1");
            }
            write_into_PLC_16_Hold(1686,Mid2.value(27));

            write_into_PLC_32_Hold(1614,Mid2.value(28));
            if(Mid2.value(29) == "45")
            {
                write_into_PLC_16_Hold(1654,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1654,"1");
            }
            if(Mid2.value(30) == "45")
            {
                write_into_PLC_16_Hold(1655,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1655,"1");
            }
            write_into_PLC_16_Hold(1687,Mid2.value(31));

            write_into_PLC_32_Hold(1616,Mid2.value(32));
            if(Mid2.value(33) == "45")
            {
                write_into_PLC_16_Hold(1656,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1656,"1");
            }
            if(Mid2.value(34) == "45")
            {
                write_into_PLC_16_Hold(1657,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1657,"1");
            }
            write_into_PLC_16_Hold(1688,Mid2.value(35));

            write_into_PLC_32_Hold(1618,Mid2.value(36));
            if(Mid2.value(37) == "45")
            {
                write_into_PLC_16_Hold(1658,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1658,"1");
            }
            if(Mid2.value(38) == "45")
            {
                write_into_PLC_16_Hold(1659,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1659,"1");
            }
            write_into_PLC_16_Hold(1689,Mid2.value(39));

            break;
        }
        default:
        {
            qDebug()<<"其他数据!!!画门窗二维码";
            break;
        }
        }

        write_into_PLC_32_Hold(1620,"0");
        write_into_PLC_16_Hold(1660,"0");
        write_into_PLC_16_Hold(1661,"0");
        write_into_PLC_16_Hold(1690,"0");
        write_into_PLC_16_Hold(1710,"0");

        write_into_PLC_32_Hold(1622,"0");
        write_into_PLC_16_Hold(1662,"0");
        write_into_PLC_16_Hold(1663,"0");
        write_into_PLC_16_Hold(1691,"0");
        write_into_PLC_16_Hold(1711,"0");

        write_into_PLC_32_Hold(1624,"0");
        write_into_PLC_16_Hold(1664,"0");
        write_into_PLC_16_Hold(1665,"0");
        write_into_PLC_16_Hold(1692,"0");
        write_into_PLC_16_Hold(1712,"0");

        write_into_PLC_32_Hold(1626,"0");
        write_into_PLC_16_Hold(1666,"0");
        write_into_PLC_16_Hold(1667,"0");
        write_into_PLC_16_Hold(1693,"0");
        write_into_PLC_16_Hold(1713,"0");

        write_into_PLC_32_Hold(1628,"0");
        write_into_PLC_16_Hold(1668,"0");
        write_into_PLC_16_Hold(1669,"0");
        write_into_PLC_16_Hold(1694,"0");
        write_into_PLC_16_Hold(1714,"0");

        write_into_PLC_32_Hold(1630,"0");
        write_into_PLC_16_Hold(1670,"0");
        write_into_PLC_16_Hold(1671,"0");
        write_into_PLC_16_Hold(1695,"0");
        write_into_PLC_16_Hold(1715,"0");

        write_into_PLC_32_Hold(1632,"0");
        write_into_PLC_16_Hold(1672,"0");
        write_into_PLC_16_Hold(1673,"0");
        write_into_PLC_16_Hold(1696,"0");
        write_into_PLC_16_Hold(1716,"0");

        write_into_PLC_32_Hold(1634,"0");
        write_into_PLC_16_Hold(1674,"0");
        write_into_PLC_16_Hold(1675,"0");
        write_into_PLC_16_Hold(1697,"0");
        write_into_PLC_16_Hold(1717,"0");

        write_into_PLC_32_Hold(1636,"0");
        write_into_PLC_16_Hold(1676,"0");
        write_into_PLC_16_Hold(1677,"0");
        write_into_PLC_16_Hold(1698,"0");
        write_into_PLC_16_Hold(1718,"0");

        write_into_PLC_32_Hold(1638,"0");
        write_into_PLC_16_Hold(1678,"0");
        write_into_PLC_16_Hold(1679,"0");
        write_into_PLC_16_Hold(1699,"0");
        write_into_PLC_16_Hold(1719,"0");

    }
    case 4 :{
        qDebug()<<"创品离线二维码解析";
        // 创品二维码
        // qDebug()<<"触发 创品二维码 解析";
        // qDebug()<<"读取到的结果:"<<*result;
        // qDebug()<<"数据长度:"<<Mid.length();
        // qDebug()<<"有效数据长度:"<<Mid.length() / 2;

        int enableCount = Mid.length() / 2;

        switch(enableCount)
        {
        case 1:
            write_into_PLC_32_Hold(1600,Mid.value(0));
            write_into_PLC_16_Hold(1680,Mid.value(1));
            write_into_PLC_32_Hold(1602,"0");
            write_into_PLC_16_Hold(1681,"0");
            write_into_PLC_32_Hold(1604,"0");
            write_into_PLC_16_Hold(1682,"0");
            write_into_PLC_32_Hold(1606,"0");
            write_into_PLC_16_Hold(1683,"0");
            write_into_PLC_32_Hold(1608,"0");
            write_into_PLC_16_Hold(1684,"0");
            write_into_PLC_32_Hold(1610,"0");
            write_into_PLC_16_Hold(1685,"0");
            write_into_PLC_32_Hold(1612,"0");
            write_into_PLC_16_Hold(1686,"0");
            write_into_PLC_32_Hold(1614,"0");
            write_into_PLC_16_Hold(1687,"0");
            write_into_PLC_32_Hold(1616,"0");
            write_into_PLC_16_Hold(1688,"0");
            write_into_PLC_32_Hold(1618,"0");
            write_into_PLC_16_Hold(1689,"0");

            break;
        case 2:
            write_into_PLC_32_Hold(1600,Mid.value(0));
            write_into_PLC_16_Hold(1680,Mid.value(1));
            write_into_PLC_32_Hold(1602,Mid.value(2));
            write_into_PLC_16_Hold(1681,Mid.value(3));
            write_into_PLC_32_Hold(1604,"0");
            write_into_PLC_16_Hold(1682,"0");
            write_into_PLC_32_Hold(1606,"0");
            write_into_PLC_16_Hold(1683,"0");
            write_into_PLC_32_Hold(1608,"0");
            write_into_PLC_16_Hold(1684,"0");
            write_into_PLC_32_Hold(1610,"0");
            write_into_PLC_16_Hold(1685,"0");
            write_into_PLC_32_Hold(1612,"0");
            write_into_PLC_16_Hold(1686,"0");
            write_into_PLC_32_Hold(1614,"0");
            write_into_PLC_16_Hold(1687,"0");
            write_into_PLC_32_Hold(1616,"0");
            write_into_PLC_16_Hold(1688,"0");
            write_into_PLC_32_Hold(1618,"0");
            write_into_PLC_16_Hold(1689,"0");
            break;
        case 3:
            write_into_PLC_32_Hold(1600,Mid.value(0));
            write_into_PLC_16_Hold(1680,Mid.value(1));
            write_into_PLC_32_Hold(1602,Mid.value(2));
            write_into_PLC_16_Hold(1681,Mid.value(3));
            write_into_PLC_32_Hold(1604,Mid.value(4));
            write_into_PLC_16_Hold(1682,Mid.value(5));
            write_into_PLC_32_Hold(1606,"0");
            write_into_PLC_16_Hold(1683,"0");
            write_into_PLC_32_Hold(1608,"0");
            write_into_PLC_16_Hold(1684,"0");
            write_into_PLC_32_Hold(1610,"0");
            write_into_PLC_16_Hold(1685,"0");
            write_into_PLC_32_Hold(1612,"0");
            write_into_PLC_16_Hold(1686,"0");
            write_into_PLC_32_Hold(1614,"0");
            write_into_PLC_16_Hold(1687,"0");
            write_into_PLC_32_Hold(1616,"0");
            write_into_PLC_16_Hold(1688,"0");
            write_into_PLC_32_Hold(1618,"0");
            write_into_PLC_16_Hold(1689,"0");
            break;
        case 4:
            write_into_PLC_32_Hold(1600,Mid.value(0));
            write_into_PLC_16_Hold(1680,Mid.value(1));
            write_into_PLC_32_Hold(1602,Mid.value(2));
            write_into_PLC_16_Hold(1681,Mid.value(3));
            write_into_PLC_32_Hold(1604,Mid.value(4));
            write_into_PLC_16_Hold(1682,Mid.value(5));
            write_into_PLC_32_Hold(1606,Mid.value(6));
            write_into_PLC_16_Hold(1683,Mid.value(7));
            write_into_PLC_32_Hold(1608,"0");
            write_into_PLC_16_Hold(1684,"0");
            write_into_PLC_32_Hold(1610,"0");
            write_into_PLC_16_Hold(1685,"0");
            write_into_PLC_32_Hold(1612,"0");
            write_into_PLC_16_Hold(1686,"0");
            write_into_PLC_32_Hold(1614,"0");
            write_into_PLC_16_Hold(1687,"0");
            write_into_PLC_32_Hold(1616,"0");
            write_into_PLC_16_Hold(1688,"0");
            write_into_PLC_32_Hold(1618,"0");
            write_into_PLC_16_Hold(1689,"0");
            break;
        case 5:
            write_into_PLC_32_Hold(1600,Mid.value(0));
            write_into_PLC_16_Hold(1680,Mid.value(1));
            write_into_PLC_32_Hold(1602,Mid.value(2));
            write_into_PLC_16_Hold(1681,Mid.value(3));
            write_into_PLC_32_Hold(1604,Mid.value(4));
            write_into_PLC_16_Hold(1682,Mid.value(5));
            write_into_PLC_32_Hold(1606,Mid.value(6));
            write_into_PLC_16_Hold(1683,Mid.value(7));
            write_into_PLC_32_Hold(1608,Mid.value(8));
            write_into_PLC_16_Hold(1684,Mid.value(9));
            write_into_PLC_32_Hold(1610,"0");
            write_into_PLC_16_Hold(1685,"0");
            write_into_PLC_32_Hold(1612,"0");
            write_into_PLC_16_Hold(1686,"0");
            write_into_PLC_32_Hold(1614,"0");
            write_into_PLC_16_Hold(1687,"0");
            write_into_PLC_32_Hold(1616,"0");
            write_into_PLC_16_Hold(1688,"0");
            write_into_PLC_32_Hold(1618,"0");
            write_into_PLC_16_Hold(1689,"0");
            break;
        case 6:
            write_into_PLC_32_Hold(1600,Mid.value(0));
            write_into_PLC_16_Hold(1680,Mid.value(1));
            write_into_PLC_32_Hold(1602,Mid.value(2));
            write_into_PLC_16_Hold(1681,Mid.value(3));
            write_into_PLC_32_Hold(1604,Mid.value(4));
            write_into_PLC_16_Hold(1682,Mid.value(5));
            write_into_PLC_32_Hold(1606,Mid.value(6));
            write_into_PLC_16_Hold(1683,Mid.value(7));
            write_into_PLC_32_Hold(1608,Mid.value(8));
            write_into_PLC_16_Hold(1684,Mid.value(9));
            write_into_PLC_32_Hold(1610,Mid.value(10));
            write_into_PLC_16_Hold(1685,Mid.value(11));
            write_into_PLC_32_Hold(1612,"0");
            write_into_PLC_16_Hold(1686,"0");
            write_into_PLC_32_Hold(1614,"0");
            write_into_PLC_16_Hold(1687,"0");
            write_into_PLC_32_Hold(1616,"0");
            write_into_PLC_16_Hold(1688,"0");
            write_into_PLC_32_Hold(1618,"0");
            write_into_PLC_16_Hold(1689,"0");
            break;
        case 7:
            write_into_PLC_32_Hold(1600,Mid.value(0));
            write_into_PLC_16_Hold(1680,Mid.value(1));
            write_into_PLC_32_Hold(1602,Mid.value(2));
            write_into_PLC_16_Hold(1681,Mid.value(3));
            write_into_PLC_32_Hold(1604,Mid.value(4));
            write_into_PLC_16_Hold(1682,Mid.value(5));
            write_into_PLC_32_Hold(1606,Mid.value(6));
            write_into_PLC_16_Hold(1683,Mid.value(7));
            write_into_PLC_32_Hold(1608,Mid.value(8));
            write_into_PLC_16_Hold(1684,Mid.value(9));
            write_into_PLC_32_Hold(1610,Mid.value(10));
            write_into_PLC_16_Hold(1685,Mid.value(11));
            write_into_PLC_32_Hold(1612,Mid.value(12));
            write_into_PLC_16_Hold(1686,Mid.value(13));
            write_into_PLC_32_Hold(1614,"0");
            write_into_PLC_16_Hold(1687,"0");
            write_into_PLC_32_Hold(1616,"0");
            write_into_PLC_16_Hold(1688,"0");
            write_into_PLC_32_Hold(1618,"0");
            write_into_PLC_16_Hold(1689,"0");
            break;
        case 8:
            write_into_PLC_32_Hold(1600,Mid.value(0));
            write_into_PLC_16_Hold(1680,Mid.value(1));
            write_into_PLC_32_Hold(1602,Mid.value(2));
            write_into_PLC_16_Hold(1681,Mid.value(3));
            write_into_PLC_32_Hold(1604,Mid.value(4));
            write_into_PLC_16_Hold(1682,Mid.value(5));
            write_into_PLC_32_Hold(1606,Mid.value(6));
            write_into_PLC_16_Hold(1683,Mid.value(7));
            write_into_PLC_32_Hold(1608,Mid.value(8));
            write_into_PLC_16_Hold(1684,Mid.value(9));
            write_into_PLC_32_Hold(1610,Mid.value(10));
            write_into_PLC_16_Hold(1685,Mid.value(11));
            write_into_PLC_32_Hold(1612,Mid.value(12));
            write_into_PLC_16_Hold(1686,Mid.value(13));
            write_into_PLC_32_Hold(1614,Mid.value(14));
            write_into_PLC_16_Hold(1687,Mid.value(15));
            write_into_PLC_32_Hold(1616,"0");
            write_into_PLC_16_Hold(1688,"0");
            write_into_PLC_32_Hold(1618,"0");
            write_into_PLC_16_Hold(1689,"0");
            break;
        case 9:
            write_into_PLC_32_Hold(1600,Mid.value(0));
            write_into_PLC_16_Hold(1680,Mid.value(1));
            write_into_PLC_32_Hold(1602,Mid.value(2));
            write_into_PLC_16_Hold(1681,Mid.value(3));
            write_into_PLC_32_Hold(1604,Mid.value(4));
            write_into_PLC_16_Hold(1682,Mid.value(5));
            write_into_PLC_32_Hold(1606,Mid.value(6));
            write_into_PLC_16_Hold(1683,Mid.value(7));
            write_into_PLC_32_Hold(1608,Mid.value(8));
            write_into_PLC_16_Hold(1684,Mid.value(9));
            write_into_PLC_32_Hold(1610,Mid.value(10));
            write_into_PLC_16_Hold(1685,Mid.value(11));
            write_into_PLC_32_Hold(1612,Mid.value(12));
            write_into_PLC_16_Hold(1686,Mid.value(13));
            write_into_PLC_32_Hold(1614,Mid.value(14));
            write_into_PLC_16_Hold(1687,Mid.value(15));
            write_into_PLC_32_Hold(1616,Mid.value(16));
            write_into_PLC_16_Hold(1688,Mid.value(17));
            write_into_PLC_32_Hold(1618,"0");
            write_into_PLC_16_Hold(1689,"0");
            break;
        case 10:
            write_into_PLC_32_Hold(1600,Mid.value(0));
            write_into_PLC_16_Hold(1680,Mid.value(1));
            write_into_PLC_32_Hold(1602,Mid.value(2));
            write_into_PLC_16_Hold(1681,Mid.value(3));
            write_into_PLC_32_Hold(1604,Mid.value(4));
            write_into_PLC_16_Hold(1682,Mid.value(5));
            write_into_PLC_32_Hold(1606,Mid.value(6));
            write_into_PLC_16_Hold(1683,Mid.value(7));
            write_into_PLC_32_Hold(1608,Mid.value(8));
            write_into_PLC_16_Hold(1684,Mid.value(9));
            write_into_PLC_32_Hold(1610,Mid.value(10));
            write_into_PLC_16_Hold(1685,Mid.value(11));
            write_into_PLC_32_Hold(1612,Mid.value(12));
            write_into_PLC_16_Hold(1686,Mid.value(13));
            write_into_PLC_32_Hold(1614,Mid.value(14));
            write_into_PLC_16_Hold(1687,Mid.value(15));
            write_into_PLC_32_Hold(1616,Mid.value(16));
            write_into_PLC_16_Hold(1688,Mid.value(17));
            write_into_PLC_32_Hold(1618,Mid.value(18));
            write_into_PLC_16_Hold(1689,Mid.value(19));
            break;
        default:
            qDebug()<<"其他情况!!!创品二维码";
            break;
        }


        write_into_PLC_32_Hold(1620,"0");
        write_into_PLC_16_Hold(1660,"0");
        write_into_PLC_16_Hold(1661,"0");
        write_into_PLC_16_Hold(1690,"0");
        write_into_PLC_16_Hold(1710,"0");

        write_into_PLC_32_Hold(1622,"0");
        write_into_PLC_16_Hold(1662,"0");
        write_into_PLC_16_Hold(1663,"0");
        write_into_PLC_16_Hold(1691,"0");
        write_into_PLC_16_Hold(1711,"0");

        write_into_PLC_32_Hold(1624,"0");
        write_into_PLC_16_Hold(1664,"0");
        write_into_PLC_16_Hold(1665,"0");
        write_into_PLC_16_Hold(1692,"0");
        write_into_PLC_16_Hold(1712,"0");

        write_into_PLC_32_Hold(1626,"0");
        write_into_PLC_16_Hold(1666,"0");
        write_into_PLC_16_Hold(1667,"0");
        write_into_PLC_16_Hold(1693,"0");
        write_into_PLC_16_Hold(1713,"0");

        write_into_PLC_32_Hold(1628,"0");
        write_into_PLC_16_Hold(1668,"0");
        write_into_PLC_16_Hold(1669,"0");
        write_into_PLC_16_Hold(1694,"0");
        write_into_PLC_16_Hold(1714,"0");

        write_into_PLC_32_Hold(1630,"0");
        write_into_PLC_16_Hold(1670,"0");
        write_into_PLC_16_Hold(1671,"0");
        write_into_PLC_16_Hold(1695,"0");
        write_into_PLC_16_Hold(1715,"0");

        write_into_PLC_32_Hold(1632,"0");
        write_into_PLC_16_Hold(1672,"0");
        write_into_PLC_16_Hold(1673,"0");
        write_into_PLC_16_Hold(1696,"0");
        write_into_PLC_16_Hold(1716,"0");

        write_into_PLC_32_Hold(1634,"0");
        write_into_PLC_16_Hold(1674,"0");
        write_into_PLC_16_Hold(1675,"0");
        write_into_PLC_16_Hold(1697,"0");
        write_into_PLC_16_Hold(1717,"0");

        write_into_PLC_32_Hold(1636,"0");
        write_into_PLC_16_Hold(1676,"0");
        write_into_PLC_16_Hold(1677,"0");
        write_into_PLC_16_Hold(1698,"0");
        write_into_PLC_16_Hold(1718,"0");

        write_into_PLC_32_Hold(1638,"0");
        write_into_PLC_16_Hold(1678,"0");
        write_into_PLC_16_Hold(1679,"0");
        write_into_PLC_16_Hold(1699,"0");
        write_into_PLC_16_Hold(1719,"0");

        break;
    }
    case 5 :{
        qDebug()<<"新格尔离线二维码解析";
        qDebug()<<"解析 新格尔离线料单";
        qDebug()<<"数据长度:"<<Mid.length();
        qDebug()<<"有效数据长度:"<<Mid.length() / 4;
        int enableCount = Mid.length() / 4;

        switch(enableCount)
        {
        case 1:
        {
            write_into_PLC_32_Hold(1600,Mid.value(0));
            if(Mid.value(1) == "45")
            {
                write_into_PLC_16_Hold(1640,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1640,"1");
            }
            if(Mid.value(2) == "45")
            {
                write_into_PLC_16_Hold(1641,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1641,"1");
            }
            write_into_PLC_16_Hold(1680,Mid.value(3));

            write_into_PLC_32_Hold(1602,"0");
            write_into_PLC_16_Hold(1642,"0");
            write_into_PLC_16_Hold(1643,"0");
            write_into_PLC_16_Hold(1681,"0");

            write_into_PLC_32_Hold(1604,"0");
            write_into_PLC_16_Hold(1644,"0");
            write_into_PLC_16_Hold(1645,"0");
            write_into_PLC_16_Hold(1682,"0");

            write_into_PLC_32_Hold(1606,"0");
            write_into_PLC_16_Hold(1646,"0");
            write_into_PLC_16_Hold(1647,"0");
            write_into_PLC_16_Hold(1683,"0");

            write_into_PLC_32_Hold(1608,"0");
            write_into_PLC_16_Hold(1648,"0");
            write_into_PLC_16_Hold(1649,"0");
            write_into_PLC_16_Hold(1684,"0");

            write_into_PLC_32_Hold(1610,"0");
            write_into_PLC_16_Hold(1650,"0");
            write_into_PLC_16_Hold(1651,"0");
            write_into_PLC_16_Hold(1685,"0");

            write_into_PLC_32_Hold(1612,"0");
            write_into_PLC_16_Hold(1652,"0");
            write_into_PLC_16_Hold(1653,"0");
            write_into_PLC_16_Hold(1686,"0");

            write_into_PLC_32_Hold(1614,"0");
            write_into_PLC_16_Hold(1654,"0");
            write_into_PLC_16_Hold(1655,"0");
            write_into_PLC_16_Hold(1687,"0");

            write_into_PLC_32_Hold(1616,"0");
            write_into_PLC_16_Hold(1656,"0");
            write_into_PLC_16_Hold(1657,"0");
            write_into_PLC_16_Hold(1688,"0");

            write_into_PLC_32_Hold(1618,"0");
            write_into_PLC_16_Hold(1658,"0");
            write_into_PLC_16_Hold(1659,"0");
            write_into_PLC_16_Hold(1689,"0");

            write_into_PLC_32_Hold(1620,"0");
            write_into_PLC_16_Hold(1660,"0");
            write_into_PLC_16_Hold(1661,"0");
            write_into_PLC_16_Hold(1690,"0");

            write_into_PLC_32_Hold(1622,"0");
            write_into_PLC_16_Hold(1662,"0");
            write_into_PLC_16_Hold(1663,"0");
            write_into_PLC_16_Hold(1691,"0");

            write_into_PLC_32_Hold(1624,"0");
            write_into_PLC_16_Hold(1664,"0");
            write_into_PLC_16_Hold(1665,"0");
            write_into_PLC_16_Hold(1692,"0");

            write_into_PLC_32_Hold(1626,"0");
            write_into_PLC_16_Hold(1666,"0");
            write_into_PLC_16_Hold(1667,"0");
            write_into_PLC_16_Hold(1693,"0");

            write_into_PLC_32_Hold(1628,"0");
            write_into_PLC_16_Hold(1668,"0");
            write_into_PLC_16_Hold(1669,"0");
            write_into_PLC_16_Hold(1694,"0");

            write_into_PLC_32_Hold(1630,"0");
            write_into_PLC_16_Hold(1670,"0");
            write_into_PLC_16_Hold(1671,"0");
            write_into_PLC_16_Hold(1695,"0");

            write_into_PLC_32_Hold(1632,"0");
            write_into_PLC_16_Hold(1672,"0");
            write_into_PLC_16_Hold(1673,"0");
            write_into_PLC_16_Hold(1696,"0");

            write_into_PLC_32_Hold(1634,"0");
            write_into_PLC_16_Hold(1674,"0");
            write_into_PLC_16_Hold(1675,"0");
            write_into_PLC_16_Hold(1697,"0");

            write_into_PLC_32_Hold(1636,"0");
            write_into_PLC_16_Hold(1676,"0");
            write_into_PLC_16_Hold(1677,"0");
            write_into_PLC_16_Hold(1698,"0");

            write_into_PLC_32_Hold(1638,"0");
            write_into_PLC_16_Hold(1678,"0");
            write_into_PLC_16_Hold(1679,"0");
            write_into_PLC_16_Hold(1699,"0");

            break;
        }
        case 2:
        {

            write_into_PLC_32_Hold(1600,Mid.value(0));
            if(Mid.value(1) == "45")
            {
                write_into_PLC_16_Hold(1640,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1640,"1");
            }
            if(Mid.value(2) == "45")
            {
                write_into_PLC_16_Hold(1641,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1641,"1");
            }
            write_into_PLC_16_Hold(1680,Mid.value(3));

            write_into_PLC_32_Hold(1602,Mid.value(4));
            if(Mid.value(5) == "45")
            {
                write_into_PLC_16_Hold(1642,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1642,"1");
            }
            if(Mid.value(6) == "45")
            {
                write_into_PLC_16_Hold(1643,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1643,"1");
            }
            write_into_PLC_16_Hold(1681,Mid.value(7));

            write_into_PLC_32_Hold(1604,"0");
            write_into_PLC_16_Hold(1644,"0");
            write_into_PLC_16_Hold(1645,"0");
            write_into_PLC_16_Hold(1682,"0");

            write_into_PLC_32_Hold(1606,"0");
            write_into_PLC_16_Hold(1646,"0");
            write_into_PLC_16_Hold(1647,"0");
            write_into_PLC_16_Hold(1683,"0");

            write_into_PLC_32_Hold(1608,"0");
            write_into_PLC_16_Hold(1648,"0");
            write_into_PLC_16_Hold(1649,"0");
            write_into_PLC_16_Hold(1684,"0");

            write_into_PLC_32_Hold(1610,"0");
            write_into_PLC_16_Hold(1650,"0");
            write_into_PLC_16_Hold(1651,"0");
            write_into_PLC_16_Hold(1685,"0");

            write_into_PLC_32_Hold(1612,"0");
            write_into_PLC_16_Hold(1652,"0");
            write_into_PLC_16_Hold(1653,"0");
            write_into_PLC_16_Hold(1686,"0");

            write_into_PLC_32_Hold(1614,"0");
            write_into_PLC_16_Hold(1654,"0");
            write_into_PLC_16_Hold(1655,"0");
            write_into_PLC_16_Hold(1687,"0");

            write_into_PLC_32_Hold(1616,"0");
            write_into_PLC_16_Hold(1656,"0");
            write_into_PLC_16_Hold(1657,"0");
            write_into_PLC_16_Hold(1688,"0");

            write_into_PLC_32_Hold(1618,"0");
            write_into_PLC_16_Hold(1658,"0");
            write_into_PLC_16_Hold(1659,"0");
            write_into_PLC_16_Hold(1689,"0");

            write_into_PLC_32_Hold(1620,"0");
            write_into_PLC_16_Hold(1660,"0");
            write_into_PLC_16_Hold(1661,"0");
            write_into_PLC_16_Hold(1690,"0");

            write_into_PLC_32_Hold(1622,"0");
            write_into_PLC_16_Hold(1662,"0");
            write_into_PLC_16_Hold(1663,"0");
            write_into_PLC_16_Hold(1691,"0");

            write_into_PLC_32_Hold(1624,"0");
            write_into_PLC_16_Hold(1664,"0");
            write_into_PLC_16_Hold(1665,"0");
            write_into_PLC_16_Hold(1692,"0");

            write_into_PLC_32_Hold(1626,"0");
            write_into_PLC_16_Hold(1666,"0");
            write_into_PLC_16_Hold(1667,"0");
            write_into_PLC_16_Hold(1693,"0");

            write_into_PLC_32_Hold(1628,"0");
            write_into_PLC_16_Hold(1668,"0");
            write_into_PLC_16_Hold(1669,"0");
            write_into_PLC_16_Hold(1694,"0");

            write_into_PLC_32_Hold(1630,"0");
            write_into_PLC_16_Hold(1670,"0");
            write_into_PLC_16_Hold(1671,"0");
            write_into_PLC_16_Hold(1695,"0");

            write_into_PLC_32_Hold(1632,"0");
            write_into_PLC_16_Hold(1672,"0");
            write_into_PLC_16_Hold(1673,"0");
            write_into_PLC_16_Hold(1696,"0");

            write_into_PLC_32_Hold(1634,"0");
            write_into_PLC_16_Hold(1674,"0");
            write_into_PLC_16_Hold(1675,"0");
            write_into_PLC_16_Hold(1697,"0");

            write_into_PLC_32_Hold(1636,"0");
            write_into_PLC_16_Hold(1676,"0");
            write_into_PLC_16_Hold(1677,"0");
            write_into_PLC_16_Hold(1698,"0");

            write_into_PLC_32_Hold(1638,"0");
            write_into_PLC_16_Hold(1678,"0");
            write_into_PLC_16_Hold(1679,"0");
            write_into_PLC_16_Hold(1699,"0");

            break;
        }
        case 3:
        {
            write_into_PLC_32_Hold(1600,Mid.value(0));
            if(Mid.value(1) == "45")
            {
                write_into_PLC_16_Hold(1640,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1640,"1");
            }
            if(Mid.value(2) == "45")
            {
                write_into_PLC_16_Hold(1641,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1641,"1");
            }
            write_into_PLC_16_Hold(1680,Mid.value(3));

            write_into_PLC_32_Hold(1602,Mid.value(4));
            if(Mid.value(5) == "45")
            {
                write_into_PLC_16_Hold(1642,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1642,"1");
            }
            if(Mid.value(6) == "45")
            {
                write_into_PLC_16_Hold(1643,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1643,"1");
            }
            write_into_PLC_16_Hold(1681,Mid.value(7));

            write_into_PLC_32_Hold(1604,Mid.value(8));
            if(Mid.value(9) == "45")
            {
                write_into_PLC_16_Hold(1644,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1644,"1");
            }
            if(Mid.value(10) == "45")
            {
                write_into_PLC_16_Hold(1645,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1645,"1");
            }
            write_into_PLC_16_Hold(1682,Mid.value(11));

            write_into_PLC_32_Hold(1606,"0");
            write_into_PLC_16_Hold(1646,"0");
            write_into_PLC_16_Hold(1647,"0");
            write_into_PLC_16_Hold(1683,"0");

            write_into_PLC_32_Hold(1608,"0");
            write_into_PLC_16_Hold(1648,"0");
            write_into_PLC_16_Hold(1649,"0");
            write_into_PLC_16_Hold(1684,"0");

            write_into_PLC_32_Hold(1610,"0");
            write_into_PLC_16_Hold(1650,"0");
            write_into_PLC_16_Hold(1651,"0");
            write_into_PLC_16_Hold(1685,"0");

            write_into_PLC_32_Hold(1612,"0");
            write_into_PLC_16_Hold(1652,"0");
            write_into_PLC_16_Hold(1653,"0");
            write_into_PLC_16_Hold(1686,"0");

            write_into_PLC_32_Hold(1614,"0");
            write_into_PLC_16_Hold(1654,"0");
            write_into_PLC_16_Hold(1655,"0");
            write_into_PLC_16_Hold(1687,"0");

            write_into_PLC_32_Hold(1616,"0");
            write_into_PLC_16_Hold(1656,"0");
            write_into_PLC_16_Hold(1657,"0");
            write_into_PLC_16_Hold(1688,"0");

            write_into_PLC_32_Hold(1618,"0");
            write_into_PLC_16_Hold(1658,"0");
            write_into_PLC_16_Hold(1659,"0");
            write_into_PLC_16_Hold(1689,"0");

            write_into_PLC_32_Hold(1620,"0");
            write_into_PLC_16_Hold(1660,"0");
            write_into_PLC_16_Hold(1661,"0");
            write_into_PLC_16_Hold(1690,"0");

            write_into_PLC_32_Hold(1622,"0");
            write_into_PLC_16_Hold(1662,"0");
            write_into_PLC_16_Hold(1663,"0");
            write_into_PLC_16_Hold(1691,"0");

            write_into_PLC_32_Hold(1624,"0");
            write_into_PLC_16_Hold(1664,"0");
            write_into_PLC_16_Hold(1665,"0");
            write_into_PLC_16_Hold(1692,"0");

            write_into_PLC_32_Hold(1626,"0");
            write_into_PLC_16_Hold(1666,"0");
            write_into_PLC_16_Hold(1667,"0");
            write_into_PLC_16_Hold(1693,"0");

            write_into_PLC_32_Hold(1628,"0");
            write_into_PLC_16_Hold(1668,"0");
            write_into_PLC_16_Hold(1669,"0");
            write_into_PLC_16_Hold(1694,"0");

            write_into_PLC_32_Hold(1630,"0");
            write_into_PLC_16_Hold(1670,"0");
            write_into_PLC_16_Hold(1671,"0");
            write_into_PLC_16_Hold(1695,"0");

            write_into_PLC_32_Hold(1632,"0");
            write_into_PLC_16_Hold(1672,"0");
            write_into_PLC_16_Hold(1673,"0");
            write_into_PLC_16_Hold(1696,"0");

            write_into_PLC_32_Hold(1634,"0");
            write_into_PLC_16_Hold(1674,"0");
            write_into_PLC_16_Hold(1675,"0");
            write_into_PLC_16_Hold(1697,"0");

            write_into_PLC_32_Hold(1636,"0");
            write_into_PLC_16_Hold(1676,"0");
            write_into_PLC_16_Hold(1677,"0");
            write_into_PLC_16_Hold(1698,"0");

            write_into_PLC_32_Hold(1638,"0");
            write_into_PLC_16_Hold(1678,"0");
            write_into_PLC_16_Hold(1679,"0");
            write_into_PLC_16_Hold(1699,"0");

            break;
        }
        case 4:
        {
            write_into_PLC_32_Hold(1600,Mid.value(0));
            if(Mid.value(1) == "45")
            {
                write_into_PLC_16_Hold(1640,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1640,"1");
            }
            if(Mid.value(2) == "45")
            {
                write_into_PLC_16_Hold(1641,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1641,"1");
            }
            write_into_PLC_16_Hold(1680,Mid.value(3));

            write_into_PLC_32_Hold(1602,Mid.value(4));
            if(Mid.value(5) == "45")
            {
                write_into_PLC_16_Hold(1642,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1642,"1");
            }
            if(Mid.value(6) == "45")
            {
                write_into_PLC_16_Hold(1643,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1643,"1");
            }
            write_into_PLC_16_Hold(1681,Mid.value(7));

            write_into_PLC_32_Hold(1604,Mid.value(8));
            if(Mid.value(9) == "45")
            {
                write_into_PLC_16_Hold(1644,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1644,"1");
            }
            if(Mid.value(10) == "45")
            {
                write_into_PLC_16_Hold(1645,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1645,"1");
            }
            write_into_PLC_16_Hold(1682,Mid.value(11));

            write_into_PLC_32_Hold(1606,Mid.value(12));
            if(Mid.value(13) == "45")
            {
                write_into_PLC_16_Hold(1646,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1646,"1");
            }
            if(Mid.value(14) == "45")
            {
                write_into_PLC_16_Hold(1647,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1647,"1");
            }
            write_into_PLC_16_Hold(1683,Mid.value(15));

            write_into_PLC_32_Hold(1608,"0");
            write_into_PLC_16_Hold(1648,"0");
            write_into_PLC_16_Hold(1649,"0");
            write_into_PLC_16_Hold(1684,"0");

            write_into_PLC_32_Hold(1610,"0");
            write_into_PLC_16_Hold(1650,"0");
            write_into_PLC_16_Hold(1651,"0");
            write_into_PLC_16_Hold(1685,"0");

            write_into_PLC_32_Hold(1612,"0");
            write_into_PLC_16_Hold(1652,"0");
            write_into_PLC_16_Hold(1653,"0");
            write_into_PLC_16_Hold(1686,"0");

            write_into_PLC_32_Hold(1614,"0");
            write_into_PLC_16_Hold(1654,"0");
            write_into_PLC_16_Hold(1655,"0");
            write_into_PLC_16_Hold(1687,"0");

            write_into_PLC_32_Hold(1616,"0");
            write_into_PLC_16_Hold(1656,"0");
            write_into_PLC_16_Hold(1657,"0");
            write_into_PLC_16_Hold(1688,"0");

            write_into_PLC_32_Hold(1618,"0");
            write_into_PLC_16_Hold(1658,"0");
            write_into_PLC_16_Hold(1659,"0");
            write_into_PLC_16_Hold(1689,"0");

            write_into_PLC_32_Hold(1620,"0");
            write_into_PLC_16_Hold(1660,"0");
            write_into_PLC_16_Hold(1661,"0");
            write_into_PLC_16_Hold(1690,"0");

            write_into_PLC_32_Hold(1622,"0");
            write_into_PLC_16_Hold(1662,"0");
            write_into_PLC_16_Hold(1663,"0");
            write_into_PLC_16_Hold(1691,"0");

            write_into_PLC_32_Hold(1624,"0");
            write_into_PLC_16_Hold(1664,"0");
            write_into_PLC_16_Hold(1665,"0");
            write_into_PLC_16_Hold(1692,"0");

            write_into_PLC_32_Hold(1626,"0");
            write_into_PLC_16_Hold(1666,"0");
            write_into_PLC_16_Hold(1667,"0");
            write_into_PLC_16_Hold(1693,"0");

            write_into_PLC_32_Hold(1628,"0");
            write_into_PLC_16_Hold(1668,"0");
            write_into_PLC_16_Hold(1669,"0");
            write_into_PLC_16_Hold(1694,"0");

            write_into_PLC_32_Hold(1630,"0");
            write_into_PLC_16_Hold(1670,"0");
            write_into_PLC_16_Hold(1671,"0");
            write_into_PLC_16_Hold(1695,"0");

            write_into_PLC_32_Hold(1632,"0");
            write_into_PLC_16_Hold(1672,"0");
            write_into_PLC_16_Hold(1673,"0");
            write_into_PLC_16_Hold(1696,"0");

            write_into_PLC_32_Hold(1634,"0");
            write_into_PLC_16_Hold(1674,"0");
            write_into_PLC_16_Hold(1675,"0");
            write_into_PLC_16_Hold(1697,"0");

            write_into_PLC_32_Hold(1636,"0");
            write_into_PLC_16_Hold(1676,"0");
            write_into_PLC_16_Hold(1677,"0");
            write_into_PLC_16_Hold(1698,"0");

            write_into_PLC_32_Hold(1638,"0");
            write_into_PLC_16_Hold(1678,"0");
            write_into_PLC_16_Hold(1679,"0");
            write_into_PLC_16_Hold(1699,"0");

            break;
        }
        case 5:
        {
            write_into_PLC_32_Hold(1600,Mid.value(0));
            if(Mid.value(1) == "45")
            {
                write_into_PLC_16_Hold(1640,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1640,"1");
            }
            if(Mid.value(2) == "45")
            {
                write_into_PLC_16_Hold(1641,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1641,"1");
            }
            write_into_PLC_16_Hold(1680,Mid.value(3));

            write_into_PLC_32_Hold(1602,Mid.value(4));
            if(Mid.value(5) == "45")
            {
                write_into_PLC_16_Hold(1642,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1642,"1");
            }
            if(Mid.value(6) == "45")
            {
                write_into_PLC_16_Hold(1643,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1643,"1");
            }
            write_into_PLC_16_Hold(1681,Mid.value(7));

            write_into_PLC_32_Hold(1604,Mid.value(8));
            if(Mid.value(9) == "45")
            {
                write_into_PLC_16_Hold(1644,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1644,"1");
            }
            if(Mid.value(10) == "45")
            {
                write_into_PLC_16_Hold(1645,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1645,"1");
            }
            write_into_PLC_16_Hold(1682,Mid.value(11));

            write_into_PLC_32_Hold(1606,Mid.value(12));
            if(Mid.value(13) == "45")
            {
                write_into_PLC_16_Hold(1646,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1646,"1");
            }
            if(Mid.value(14) == "45")
            {
                write_into_PLC_16_Hold(1647,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1647,"1");
            }
            write_into_PLC_16_Hold(1683,Mid.value(15));

            write_into_PLC_32_Hold(1608,Mid.value(16));
            if(Mid.value(17) == "45")
            {
                write_into_PLC_16_Hold(1648,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1648,"1");
            }
            if(Mid.value(18) == "45")
            {
                write_into_PLC_16_Hold(1649,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1649,"1");
            }
            write_into_PLC_16_Hold(1684,Mid.value(19));

            write_into_PLC_32_Hold(1610,"0");
            write_into_PLC_16_Hold(1650,"0");
            write_into_PLC_16_Hold(1651,"0");
            write_into_PLC_16_Hold(1685,"0");

            write_into_PLC_32_Hold(1612,"0");
            write_into_PLC_16_Hold(1652,"0");
            write_into_PLC_16_Hold(1653,"0");
            write_into_PLC_16_Hold(1686,"0");

            write_into_PLC_32_Hold(1614,"0");
            write_into_PLC_16_Hold(1654,"0");
            write_into_PLC_16_Hold(1655,"0");
            write_into_PLC_16_Hold(1687,"0");

            write_into_PLC_32_Hold(1616,"0");
            write_into_PLC_16_Hold(1656,"0");
            write_into_PLC_16_Hold(1657,"0");
            write_into_PLC_16_Hold(1688,"0");

            write_into_PLC_32_Hold(1618,"0");
            write_into_PLC_16_Hold(1658,"0");
            write_into_PLC_16_Hold(1659,"0");
            write_into_PLC_16_Hold(1689,"0");

            write_into_PLC_32_Hold(1620,"0");
            write_into_PLC_16_Hold(1660,"0");
            write_into_PLC_16_Hold(1661,"0");
            write_into_PLC_16_Hold(1690,"0");

            write_into_PLC_32_Hold(1622,"0");
            write_into_PLC_16_Hold(1662,"0");
            write_into_PLC_16_Hold(1663,"0");
            write_into_PLC_16_Hold(1691,"0");

            write_into_PLC_32_Hold(1624,"0");
            write_into_PLC_16_Hold(1664,"0");
            write_into_PLC_16_Hold(1665,"0");
            write_into_PLC_16_Hold(1692,"0");

            write_into_PLC_32_Hold(1626,"0");
            write_into_PLC_16_Hold(1666,"0");
            write_into_PLC_16_Hold(1667,"0");
            write_into_PLC_16_Hold(1693,"0");

            write_into_PLC_32_Hold(1628,"0");
            write_into_PLC_16_Hold(1668,"0");
            write_into_PLC_16_Hold(1669,"0");
            write_into_PLC_16_Hold(1694,"0");

            write_into_PLC_32_Hold(1630,"0");
            write_into_PLC_16_Hold(1670,"0");
            write_into_PLC_16_Hold(1671,"0");
            write_into_PLC_16_Hold(1695,"0");

            write_into_PLC_32_Hold(1632,"0");
            write_into_PLC_16_Hold(1672,"0");
            write_into_PLC_16_Hold(1673,"0");
            write_into_PLC_16_Hold(1696,"0");

            write_into_PLC_32_Hold(1634,"0");
            write_into_PLC_16_Hold(1674,"0");
            write_into_PLC_16_Hold(1675,"0");
            write_into_PLC_16_Hold(1697,"0");

            write_into_PLC_32_Hold(1636,"0");
            write_into_PLC_16_Hold(1676,"0");
            write_into_PLC_16_Hold(1677,"0");
            write_into_PLC_16_Hold(1698,"0");

            write_into_PLC_32_Hold(1638,"0");
            write_into_PLC_16_Hold(1678,"0");
            write_into_PLC_16_Hold(1679,"0");
            write_into_PLC_16_Hold(1699,"0");

            break;
        }
        case 6:
        {
            write_into_PLC_32_Hold(1600,Mid.value(0));
            if(Mid.value(1) == "45")
            {
                write_into_PLC_16_Hold(1640,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1640,"1");
            }
            if(Mid.value(2) == "45")
            {
                write_into_PLC_16_Hold(1641,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1641,"1");
            }
            write_into_PLC_16_Hold(1680,Mid.value(3));

            write_into_PLC_32_Hold(1602,Mid.value(4));
            if(Mid.value(5) == "45")
            {
                write_into_PLC_16_Hold(1642,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1642,"1");
            }
            if(Mid.value(6) == "45")
            {
                write_into_PLC_16_Hold(1643,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1643,"1");
            }
            write_into_PLC_16_Hold(1681,Mid.value(7));

            write_into_PLC_32_Hold(1604,Mid.value(8));
            if(Mid.value(9) == "45")
            {
                write_into_PLC_16_Hold(1644,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1644,"1");
            }
            if(Mid.value(10) == "45")
            {
                write_into_PLC_16_Hold(1645,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1645,"1");
            }
            write_into_PLC_16_Hold(1682,Mid.value(11));

            write_into_PLC_32_Hold(1606,Mid.value(12));
            if(Mid.value(13) == "45")
            {
                write_into_PLC_16_Hold(1646,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1646,"1");
            }
            if(Mid.value(14) == "45")
            {
                write_into_PLC_16_Hold(1647,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1647,"1");
            }
            write_into_PLC_16_Hold(1683,Mid.value(15));

            write_into_PLC_32_Hold(1608,Mid.value(16));
            if(Mid.value(17) == "45")
            {
                write_into_PLC_16_Hold(1648,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1648,"1");
            }
            if(Mid.value(18) == "45")
            {
                write_into_PLC_16_Hold(1649,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1649,"1");
            }
            write_into_PLC_16_Hold(1684,Mid.value(19));

            write_into_PLC_32_Hold(1610,Mid.value(20));
            if(Mid.value(21) == "45")
            {
                write_into_PLC_16_Hold(1650,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1650,"1");
            }
            if(Mid.value(22) == "45")
            {
                write_into_PLC_16_Hold(1651,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1651,"1");
            }
            write_into_PLC_16_Hold(1685,Mid.value(23));

            write_into_PLC_32_Hold(1612,"0");
            write_into_PLC_16_Hold(1652,"0");
            write_into_PLC_16_Hold(1653,"0");
            write_into_PLC_16_Hold(1686,"0");

            write_into_PLC_32_Hold(1614,"0");
            write_into_PLC_16_Hold(1654,"0");
            write_into_PLC_16_Hold(1655,"0");
            write_into_PLC_16_Hold(1687,"0");

            write_into_PLC_32_Hold(1616,"0");
            write_into_PLC_16_Hold(1656,"0");
            write_into_PLC_16_Hold(1657,"0");
            write_into_PLC_16_Hold(1688,"0");

            write_into_PLC_32_Hold(1618,"0");
            write_into_PLC_16_Hold(1658,"0");
            write_into_PLC_16_Hold(1659,"0");
            write_into_PLC_16_Hold(1689,"0");

            write_into_PLC_32_Hold(1620,"0");
            write_into_PLC_16_Hold(1660,"0");
            write_into_PLC_16_Hold(1661,"0");
            write_into_PLC_16_Hold(1690,"0");

            write_into_PLC_32_Hold(1622,"0");
            write_into_PLC_16_Hold(1662,"0");
            write_into_PLC_16_Hold(1663,"0");
            write_into_PLC_16_Hold(1691,"0");

            write_into_PLC_32_Hold(1624,"0");
            write_into_PLC_16_Hold(1664,"0");
            write_into_PLC_16_Hold(1665,"0");
            write_into_PLC_16_Hold(1692,"0");

            write_into_PLC_32_Hold(1626,"0");
            write_into_PLC_16_Hold(1666,"0");
            write_into_PLC_16_Hold(1667,"0");
            write_into_PLC_16_Hold(1693,"0");

            write_into_PLC_32_Hold(1628,"0");
            write_into_PLC_16_Hold(1668,"0");
            write_into_PLC_16_Hold(1669,"0");
            write_into_PLC_16_Hold(1694,"0");

            write_into_PLC_32_Hold(1630,"0");
            write_into_PLC_16_Hold(1670,"0");
            write_into_PLC_16_Hold(1671,"0");
            write_into_PLC_16_Hold(1695,"0");

            write_into_PLC_32_Hold(1632,"0");
            write_into_PLC_16_Hold(1672,"0");
            write_into_PLC_16_Hold(1673,"0");
            write_into_PLC_16_Hold(1696,"0");

            write_into_PLC_32_Hold(1634,"0");
            write_into_PLC_16_Hold(1674,"0");
            write_into_PLC_16_Hold(1675,"0");
            write_into_PLC_16_Hold(1697,"0");

            write_into_PLC_32_Hold(1636,"0");
            write_into_PLC_16_Hold(1676,"0");
            write_into_PLC_16_Hold(1677,"0");
            write_into_PLC_16_Hold(1698,"0");

            write_into_PLC_32_Hold(1638,"0");
            write_into_PLC_16_Hold(1678,"0");
            write_into_PLC_16_Hold(1679,"0");
            write_into_PLC_16_Hold(1699,"0");

            break;
        }
        case 7:
        {
            write_into_PLC_32_Hold(1600,Mid.value(0));
            if(Mid.value(1) == "45")
            {
                write_into_PLC_16_Hold(1640,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1640,"1");
            }
            if(Mid.value(2) == "45")
            {
                write_into_PLC_16_Hold(1641,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1641,"1");
            }
            write_into_PLC_16_Hold(1680,Mid.value(3));

            write_into_PLC_32_Hold(1602,Mid.value(4));
            if(Mid.value(5) == "45")
            {
                write_into_PLC_16_Hold(1642,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1642,"1");
            }
            if(Mid.value(6) == "45")
            {
                write_into_PLC_16_Hold(1643,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1643,"1");
            }
            write_into_PLC_16_Hold(1681,Mid.value(7));

            write_into_PLC_32_Hold(1604,Mid.value(8));
            if(Mid.value(9) == "45")
            {
                write_into_PLC_16_Hold(1644,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1644,"1");
            }
            if(Mid.value(10) == "45")
            {
                write_into_PLC_16_Hold(1645,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1645,"1");
            }
            write_into_PLC_16_Hold(1682,Mid.value(11));

            write_into_PLC_32_Hold(1606,Mid.value(12));
            if(Mid.value(13) == "45")
            {
                write_into_PLC_16_Hold(1646,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1646,"1");
            }
            if(Mid.value(14) == "45")
            {
                write_into_PLC_16_Hold(1647,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1647,"1");
            }
            write_into_PLC_16_Hold(1683,Mid.value(15));

            write_into_PLC_32_Hold(1608,Mid.value(16));
            if(Mid.value(17) == "45")
            {
                write_into_PLC_16_Hold(1648,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1648,"1");
            }
            if(Mid.value(18) == "45")
            {
                write_into_PLC_16_Hold(1649,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1649,"1");
            }
            write_into_PLC_16_Hold(1684,Mid.value(19));

            write_into_PLC_32_Hold(1610,Mid.value(20));
            if(Mid.value(21) == "45")
            {
                write_into_PLC_16_Hold(1650,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1650,"1");
            }
            if(Mid.value(22) == "45")
            {
                write_into_PLC_16_Hold(1651,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1651,"1");
            }
            write_into_PLC_16_Hold(1685,Mid.value(23));

            write_into_PLC_32_Hold(1612,Mid.value(24));
            if(Mid.value(25) == "45")
            {
                write_into_PLC_16_Hold(1652,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1652,"1");
            }
            if(Mid.value(26) == "45")
            {
                write_into_PLC_16_Hold(1653,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1653,"1");
            }
            write_into_PLC_16_Hold(1686,Mid.value(27));

            write_into_PLC_32_Hold(1614,"0");
            write_into_PLC_16_Hold(1654,"0");
            write_into_PLC_16_Hold(1655,"0");
            write_into_PLC_16_Hold(1687,"0");

            write_into_PLC_32_Hold(1616,"0");
            write_into_PLC_16_Hold(1656,"0");
            write_into_PLC_16_Hold(1657,"0");
            write_into_PLC_16_Hold(1688,"0");

            write_into_PLC_32_Hold(1618,"0");
            write_into_PLC_16_Hold(1658,"0");
            write_into_PLC_16_Hold(1659,"0");
            write_into_PLC_16_Hold(1689,"0");

            write_into_PLC_32_Hold(1620,"0");
            write_into_PLC_16_Hold(1660,"0");
            write_into_PLC_16_Hold(1661,"0");
            write_into_PLC_16_Hold(1690,"0");

            write_into_PLC_32_Hold(1622,"0");
            write_into_PLC_16_Hold(1662,"0");
            write_into_PLC_16_Hold(1663,"0");
            write_into_PLC_16_Hold(1691,"0");

            write_into_PLC_32_Hold(1624,"0");
            write_into_PLC_16_Hold(1664,"0");
            write_into_PLC_16_Hold(1665,"0");
            write_into_PLC_16_Hold(1692,"0");

            write_into_PLC_32_Hold(1626,"0");
            write_into_PLC_16_Hold(1666,"0");
            write_into_PLC_16_Hold(1667,"0");
            write_into_PLC_16_Hold(1693,"0");

            write_into_PLC_32_Hold(1628,"0");
            write_into_PLC_16_Hold(1668,"0");
            write_into_PLC_16_Hold(1669,"0");
            write_into_PLC_16_Hold(1694,"0");

            write_into_PLC_32_Hold(1630,"0");
            write_into_PLC_16_Hold(1670,"0");
            write_into_PLC_16_Hold(1671,"0");
            write_into_PLC_16_Hold(1695,"0");

            write_into_PLC_32_Hold(1632,"0");
            write_into_PLC_16_Hold(1672,"0");
            write_into_PLC_16_Hold(1673,"0");
            write_into_PLC_16_Hold(1696,"0");

            write_into_PLC_32_Hold(1634,"0");
            write_into_PLC_16_Hold(1674,"0");
            write_into_PLC_16_Hold(1675,"0");
            write_into_PLC_16_Hold(1697,"0");

            write_into_PLC_32_Hold(1636,"0");
            write_into_PLC_16_Hold(1676,"0");
            write_into_PLC_16_Hold(1677,"0");
            write_into_PLC_16_Hold(1698,"0");

            write_into_PLC_32_Hold(1638,"0");
            write_into_PLC_16_Hold(1678,"0");
            write_into_PLC_16_Hold(1679,"0");
            write_into_PLC_16_Hold(1699,"0");

            break;
        }
        case 8:
        {
            write_into_PLC_32_Hold(1600,Mid.value(0));
            if(Mid.value(1) == "45")
            {
                write_into_PLC_16_Hold(1640,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1640,"1");
            }
            if(Mid.value(2) == "45")
            {
                write_into_PLC_16_Hold(1641,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1641,"1");
            }
            write_into_PLC_16_Hold(1680,Mid.value(3));

            write_into_PLC_32_Hold(1602,Mid.value(4));
            if(Mid.value(5) == "45")
            {
                write_into_PLC_16_Hold(1642,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1642,"1");
            }
            if(Mid.value(6) == "45")
            {
                write_into_PLC_16_Hold(1643,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1643,"1");
            }
            write_into_PLC_16_Hold(1681,Mid.value(7));

            write_into_PLC_32_Hold(1604,Mid.value(8));
            if(Mid.value(9) == "45")
            {
                write_into_PLC_16_Hold(1644,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1644,"1");
            }
            if(Mid.value(10) == "45")
            {
                write_into_PLC_16_Hold(1645,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1645,"1");
            }
            write_into_PLC_16_Hold(1682,Mid.value(11));

            write_into_PLC_32_Hold(1606,Mid.value(12));
            if(Mid.value(13) == "45")
            {
                write_into_PLC_16_Hold(1646,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1646,"1");
            }
            if(Mid.value(14) == "45")
            {
                write_into_PLC_16_Hold(1647,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1647,"1");
            }
            write_into_PLC_16_Hold(1683,Mid.value(15));

            write_into_PLC_32_Hold(1608,Mid.value(16));
            if(Mid.value(17) == "45")
            {
                write_into_PLC_16_Hold(1648,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1648,"1");
            }
            if(Mid.value(18) == "45")
            {
                write_into_PLC_16_Hold(1649,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1649,"1");
            }
            write_into_PLC_16_Hold(1684,Mid.value(19));

            write_into_PLC_32_Hold(1610,Mid.value(20));
            if(Mid.value(21) == "45")
            {
                write_into_PLC_16_Hold(1650,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1650,"1");
            }
            if(Mid.value(22) == "45")
            {
                write_into_PLC_16_Hold(1651,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1651,"1");
            }
            write_into_PLC_16_Hold(1685,Mid.value(23));

            write_into_PLC_32_Hold(1612,Mid.value(24));
            if(Mid.value(25) == "45")
            {
                write_into_PLC_16_Hold(1652,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1652,"1");
            }
            if(Mid.value(26) == "45")
            {
                write_into_PLC_16_Hold(1653,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1653,"1");
            }
            write_into_PLC_16_Hold(1686,Mid.value(27));

            write_into_PLC_32_Hold(1614,Mid.value(28));
            if(Mid.value(29) == "45")
            {
                write_into_PLC_16_Hold(1654,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1654,"1");
            }
            if(Mid.value(30) == "45")
            {
                write_into_PLC_16_Hold(1655,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1655,"1");
            }
            write_into_PLC_16_Hold(1687,Mid.value(31));

            write_into_PLC_32_Hold(1616,"0");
            write_into_PLC_16_Hold(1656,"0");
            write_into_PLC_16_Hold(1657,"0");
            write_into_PLC_16_Hold(1688,"0");

            write_into_PLC_32_Hold(1618,"0");
            write_into_PLC_16_Hold(1658,"0");
            write_into_PLC_16_Hold(1659,"0");
            write_into_PLC_16_Hold(1689,"0");

            write_into_PLC_32_Hold(1620,"0");
            write_into_PLC_16_Hold(1660,"0");
            write_into_PLC_16_Hold(1661,"0");
            write_into_PLC_16_Hold(1690,"0");

            write_into_PLC_32_Hold(1622,"0");
            write_into_PLC_16_Hold(1662,"0");
            write_into_PLC_16_Hold(1663,"0");
            write_into_PLC_16_Hold(1691,"0");

            write_into_PLC_32_Hold(1624,"0");
            write_into_PLC_16_Hold(1664,"0");
            write_into_PLC_16_Hold(1665,"0");
            write_into_PLC_16_Hold(1692,"0");

            write_into_PLC_32_Hold(1626,"0");
            write_into_PLC_16_Hold(1666,"0");
            write_into_PLC_16_Hold(1667,"0");
            write_into_PLC_16_Hold(1693,"0");

            write_into_PLC_32_Hold(1628,"0");
            write_into_PLC_16_Hold(1668,"0");
            write_into_PLC_16_Hold(1669,"0");
            write_into_PLC_16_Hold(1694,"0");

            write_into_PLC_32_Hold(1630,"0");
            write_into_PLC_16_Hold(1670,"0");
            write_into_PLC_16_Hold(1671,"0");
            write_into_PLC_16_Hold(1695,"0");

            write_into_PLC_32_Hold(1632,"0");
            write_into_PLC_16_Hold(1672,"0");
            write_into_PLC_16_Hold(1673,"0");
            write_into_PLC_16_Hold(1696,"0");

            write_into_PLC_32_Hold(1634,"0");
            write_into_PLC_16_Hold(1674,"0");
            write_into_PLC_16_Hold(1675,"0");
            write_into_PLC_16_Hold(1697,"0");

            write_into_PLC_32_Hold(1636,"0");
            write_into_PLC_16_Hold(1676,"0");
            write_into_PLC_16_Hold(1677,"0");
            write_into_PLC_16_Hold(1698,"0");

            write_into_PLC_32_Hold(1638,"0");
            write_into_PLC_16_Hold(1678,"0");
            write_into_PLC_16_Hold(1679,"0");
            write_into_PLC_16_Hold(1699,"0");

            break;
        }
        case 9:
        {
            write_into_PLC_32_Hold(1600,Mid.value(0));
            if(Mid.value(1) == "45")
            {
                write_into_PLC_16_Hold(1640,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1640,"1");
            }
            if(Mid.value(2) == "45")
            {
                write_into_PLC_16_Hold(1641,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1641,"1");
            }
            write_into_PLC_16_Hold(1680,Mid.value(3));

            write_into_PLC_32_Hold(1602,Mid.value(4));
            if(Mid.value(5) == "45")
            {
                write_into_PLC_16_Hold(1642,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1642,"1");
            }
            if(Mid.value(6) == "45")
            {
                write_into_PLC_16_Hold(1643,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1643,"1");
            }
            write_into_PLC_16_Hold(1681,Mid.value(7));

            write_into_PLC_32_Hold(1604,Mid.value(8));
            if(Mid.value(9) == "45")
            {
                write_into_PLC_16_Hold(1644,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1644,"1");
            }
            if(Mid.value(10) == "45")
            {
                write_into_PLC_16_Hold(1645,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1645,"1");
            }
            write_into_PLC_16_Hold(1682,Mid.value(11));

            write_into_PLC_32_Hold(1606,Mid.value(12));
            if(Mid.value(13) == "45")
            {
                write_into_PLC_16_Hold(1646,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1646,"1");
            }
            if(Mid.value(14) == "45")
            {
                write_into_PLC_16_Hold(1647,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1647,"1");
            }
            write_into_PLC_16_Hold(1683,Mid.value(15));

            write_into_PLC_32_Hold(1608,Mid.value(16));
            if(Mid.value(17) == "45")
            {
                write_into_PLC_16_Hold(1648,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1648,"1");
            }
            if(Mid.value(18) == "45")
            {
                write_into_PLC_16_Hold(1649,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1649,"1");
            }
            write_into_PLC_16_Hold(1684,Mid.value(19));

            write_into_PLC_32_Hold(1610,Mid.value(20));
            if(Mid.value(21) == "45")
            {
                write_into_PLC_16_Hold(1650,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1650,"1");
            }
            if(Mid.value(22) == "45")
            {
                write_into_PLC_16_Hold(1651,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1651,"1");
            }
            write_into_PLC_16_Hold(1685,Mid.value(23));

            write_into_PLC_32_Hold(1612,Mid.value(24));
            if(Mid.value(25) == "45")
            {
                write_into_PLC_16_Hold(1652,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1652,"1");
            }
            if(Mid.value(26) == "45")
            {
                write_into_PLC_16_Hold(1653,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1653,"1");
            }
            write_into_PLC_16_Hold(1686,Mid.value(27));

            write_into_PLC_32_Hold(1614,Mid.value(28));
            if(Mid.value(29) == "45")
            {
                write_into_PLC_16_Hold(1654,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1654,"1");
            }
            if(Mid.value(30) == "45")
            {
                write_into_PLC_16_Hold(1655,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1655,"1");
            }
            write_into_PLC_16_Hold(1687,Mid.value(31));

            write_into_PLC_32_Hold(1616,Mid.value(32));
            if(Mid.value(33) == "45")
            {
                write_into_PLC_16_Hold(1656,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1656,"1");
            }
            if(Mid.value(34) == "45")
            {
                write_into_PLC_16_Hold(1657,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1657,"1");
            }
            write_into_PLC_16_Hold(1688,Mid.value(35));

            write_into_PLC_32_Hold(1618,"0");
            write_into_PLC_16_Hold(1658,"0");
            write_into_PLC_16_Hold(1659,"0");
            write_into_PLC_16_Hold(1689,"0");

            write_into_PLC_32_Hold(1620,"0");
            write_into_PLC_16_Hold(1660,"0");
            write_into_PLC_16_Hold(1661,"0");
            write_into_PLC_16_Hold(1690,"0");

            write_into_PLC_32_Hold(1622,"0");
            write_into_PLC_16_Hold(1662,"0");
            write_into_PLC_16_Hold(1663,"0");
            write_into_PLC_16_Hold(1691,"0");

            write_into_PLC_32_Hold(1624,"0");
            write_into_PLC_16_Hold(1664,"0");
            write_into_PLC_16_Hold(1665,"0");
            write_into_PLC_16_Hold(1692,"0");

            write_into_PLC_32_Hold(1626,"0");
            write_into_PLC_16_Hold(1666,"0");
            write_into_PLC_16_Hold(1667,"0");
            write_into_PLC_16_Hold(1693,"0");

            write_into_PLC_32_Hold(1628,"0");
            write_into_PLC_16_Hold(1668,"0");
            write_into_PLC_16_Hold(1669,"0");
            write_into_PLC_16_Hold(1694,"0");

            write_into_PLC_32_Hold(1630,"0");
            write_into_PLC_16_Hold(1670,"0");
            write_into_PLC_16_Hold(1671,"0");
            write_into_PLC_16_Hold(1695,"0");

            write_into_PLC_32_Hold(1632,"0");
            write_into_PLC_16_Hold(1672,"0");
            write_into_PLC_16_Hold(1673,"0");
            write_into_PLC_16_Hold(1696,"0");

            write_into_PLC_32_Hold(1634,"0");
            write_into_PLC_16_Hold(1674,"0");
            write_into_PLC_16_Hold(1675,"0");
            write_into_PLC_16_Hold(1697,"0");

            write_into_PLC_32_Hold(1636,"0");
            write_into_PLC_16_Hold(1676,"0");
            write_into_PLC_16_Hold(1677,"0");
            write_into_PLC_16_Hold(1698,"0");

            write_into_PLC_32_Hold(1638,"0");
            write_into_PLC_16_Hold(1678,"0");
            write_into_PLC_16_Hold(1679,"0");
            write_into_PLC_16_Hold(1699,"0");

            break;
        }
        case 10:
        {
            write_into_PLC_32_Hold(1600,Mid.value(0));
            if(Mid.value(1) == "45")
            {
                write_into_PLC_16_Hold(1640,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1640,"1");
            }
            if(Mid.value(2) == "45")
            {
                write_into_PLC_16_Hold(1641,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1641,"1");
            }
            write_into_PLC_16_Hold(1680,Mid.value(3));

            write_into_PLC_32_Hold(1602,Mid.value(4));
            if(Mid.value(5) == "45")
            {
                write_into_PLC_16_Hold(1642,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1642,"1");
            }
            if(Mid.value(6) == "45")
            {
                write_into_PLC_16_Hold(1643,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1643,"1");
            }
            write_into_PLC_16_Hold(1681,Mid.value(7));

            write_into_PLC_32_Hold(1604,Mid.value(8));
            if(Mid.value(9) == "45")
            {
                write_into_PLC_16_Hold(1644,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1644,"1");
            }
            if(Mid.value(10) == "45")
            {
                write_into_PLC_16_Hold(1645,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1645,"1");
            }
            write_into_PLC_16_Hold(1682,Mid.value(11));

            write_into_PLC_32_Hold(1606,Mid.value(12));
            if(Mid.value(13) == "45")
            {
                write_into_PLC_16_Hold(1646,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1646,"1");
            }
            if(Mid.value(14) == "45")
            {
                write_into_PLC_16_Hold(1647,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1647,"1");
            }
            write_into_PLC_16_Hold(1683,Mid.value(15));

            write_into_PLC_32_Hold(1608,Mid.value(16));
            if(Mid.value(17) == "45")
            {
                write_into_PLC_16_Hold(1648,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1648,"1");
            }
            if(Mid.value(18) == "45")
            {
                write_into_PLC_16_Hold(1649,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1649,"1");
            }
            write_into_PLC_16_Hold(1684,Mid.value(19));

            write_into_PLC_32_Hold(1610,Mid.value(20));
            if(Mid.value(21) == "45")
            {
                write_into_PLC_16_Hold(1650,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1650,"1");
            }
            if(Mid.value(22) == "45")
            {
                write_into_PLC_16_Hold(1651,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1651,"1");
            }
            write_into_PLC_16_Hold(1685,Mid.value(23));

            write_into_PLC_32_Hold(1612,Mid.value(24));
            if(Mid.value(25) == "45")
            {
                write_into_PLC_16_Hold(1652,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1652,"1");
            }
            if(Mid.value(26) == "45")
            {
                write_into_PLC_16_Hold(1653,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1653,"1");
            }
            write_into_PLC_16_Hold(1686,Mid.value(27));

            write_into_PLC_32_Hold(1614,Mid.value(28));
            if(Mid.value(29) == "45")
            {
                write_into_PLC_16_Hold(1654,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1654,"1");
            }
            if(Mid.value(30) == "45")
            {
                write_into_PLC_16_Hold(1655,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1655,"1");
            }
            write_into_PLC_16_Hold(1687,Mid.value(31));

            write_into_PLC_32_Hold(1616,Mid.value(32));
            if(Mid.value(33) == "45")
            {
                write_into_PLC_16_Hold(1656,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1656,"1");
            }
            if(Mid.value(34) == "45")
            {
                write_into_PLC_16_Hold(1657,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1657,"1");
            }
            write_into_PLC_16_Hold(1688,Mid.value(35));

            write_into_PLC_32_Hold(1618,Mid.value(36));
            if(Mid.value(37) == "45")
            {
                write_into_PLC_16_Hold(1658,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1658,"1");
            }
            if(Mid.value(38) == "45")
            {
                write_into_PLC_16_Hold(1659,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1659,"1");
            }
            write_into_PLC_16_Hold(1689,Mid.value(39));

            write_into_PLC_32_Hold(1620,"0");
            write_into_PLC_16_Hold(1660,"0");
            write_into_PLC_16_Hold(1661,"0");
            write_into_PLC_16_Hold(1690,"0");

            write_into_PLC_32_Hold(1622,"0");
            write_into_PLC_16_Hold(1662,"0");
            write_into_PLC_16_Hold(1663,"0");
            write_into_PLC_16_Hold(1691,"0");

            write_into_PLC_32_Hold(1624,"0");
            write_into_PLC_16_Hold(1664,"0");
            write_into_PLC_16_Hold(1665,"0");
            write_into_PLC_16_Hold(1692,"0");

            write_into_PLC_32_Hold(1626,"0");
            write_into_PLC_16_Hold(1666,"0");
            write_into_PLC_16_Hold(1667,"0");
            write_into_PLC_16_Hold(1693,"0");

            write_into_PLC_32_Hold(1628,"0");
            write_into_PLC_16_Hold(1668,"0");
            write_into_PLC_16_Hold(1669,"0");
            write_into_PLC_16_Hold(1694,"0");

            write_into_PLC_32_Hold(1630,"0");
            write_into_PLC_16_Hold(1670,"0");
            write_into_PLC_16_Hold(1671,"0");
            write_into_PLC_16_Hold(1695,"0");

            write_into_PLC_32_Hold(1632,"0");
            write_into_PLC_16_Hold(1672,"0");
            write_into_PLC_16_Hold(1673,"0");
            write_into_PLC_16_Hold(1696,"0");

            write_into_PLC_32_Hold(1634,"0");
            write_into_PLC_16_Hold(1674,"0");
            write_into_PLC_16_Hold(1675,"0");
            write_into_PLC_16_Hold(1697,"0");

            write_into_PLC_32_Hold(1636,"0");
            write_into_PLC_16_Hold(1676,"0");
            write_into_PLC_16_Hold(1677,"0");
            write_into_PLC_16_Hold(1698,"0");

            write_into_PLC_32_Hold(1638,"0");
            write_into_PLC_16_Hold(1678,"0");
            write_into_PLC_16_Hold(1679,"0");
            write_into_PLC_16_Hold(1699,"0");

            break;
        }
        case 11:
        {
            write_into_PLC_32_Hold(1600,Mid.value(0));
            if(Mid.value(1) == "45")
            {
                write_into_PLC_16_Hold(1640,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1640,"1");
            }
            if(Mid.value(2) == "45")
            {
                write_into_PLC_16_Hold(1641,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1641,"1");
            }
            write_into_PLC_16_Hold(1680,Mid.value(3));

            write_into_PLC_32_Hold(1602,Mid.value(4));
            if(Mid.value(5) == "45")
            {
                write_into_PLC_16_Hold(1642,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1642,"1");
            }
            if(Mid.value(6) == "45")
            {
                write_into_PLC_16_Hold(1643,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1643,"1");
            }
            write_into_PLC_16_Hold(1681,Mid.value(7));

            write_into_PLC_32_Hold(1604,Mid.value(8));
            if(Mid.value(9) == "45")
            {
                write_into_PLC_16_Hold(1644,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1644,"1");
            }
            if(Mid.value(10) == "45")
            {
                write_into_PLC_16_Hold(1645,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1645,"1");
            }
            write_into_PLC_16_Hold(1682,Mid.value(11));

            write_into_PLC_32_Hold(1606,Mid.value(12));
            if(Mid.value(13) == "45")
            {
                write_into_PLC_16_Hold(1646,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1646,"1");
            }
            if(Mid.value(14) == "45")
            {
                write_into_PLC_16_Hold(1647,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1647,"1");
            }
            write_into_PLC_16_Hold(1683,Mid.value(15));

            write_into_PLC_32_Hold(1608,Mid.value(16));
            if(Mid.value(17) == "45")
            {
                write_into_PLC_16_Hold(1648,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1648,"1");
            }
            if(Mid.value(18) == "45")
            {
                write_into_PLC_16_Hold(1649,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1649,"1");
            }
            write_into_PLC_16_Hold(1684,Mid.value(19));

            write_into_PLC_32_Hold(1610,Mid.value(20));
            if(Mid.value(21) == "45")
            {
                write_into_PLC_16_Hold(1650,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1650,"1");
            }
            if(Mid.value(22) == "45")
            {
                write_into_PLC_16_Hold(1651,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1651,"1");
            }
            write_into_PLC_16_Hold(1685,Mid.value(23));

            write_into_PLC_32_Hold(1612,Mid.value(24));
            if(Mid.value(25) == "45")
            {
                write_into_PLC_16_Hold(1652,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1652,"1");
            }
            if(Mid.value(26) == "45")
            {
                write_into_PLC_16_Hold(1653,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1653,"1");
            }
            write_into_PLC_16_Hold(1686,Mid.value(27));

            write_into_PLC_32_Hold(1614,Mid.value(28));
            if(Mid.value(29) == "45")
            {
                write_into_PLC_16_Hold(1654,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1654,"1");
            }
            if(Mid.value(30) == "45")
            {
                write_into_PLC_16_Hold(1655,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1655,"1");
            }
            write_into_PLC_16_Hold(1687,Mid.value(31));

            write_into_PLC_32_Hold(1616,Mid.value(32));
            if(Mid.value(33) == "45")
            {
                write_into_PLC_16_Hold(1656,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1656,"1");
            }
            if(Mid.value(34) == "45")
            {
                write_into_PLC_16_Hold(1657,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1657,"1");
            }
            write_into_PLC_16_Hold(1688,Mid.value(35));

            write_into_PLC_32_Hold(1618,Mid.value(36));
            if(Mid.value(37) == "45")
            {
                write_into_PLC_16_Hold(1658,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1658,"1");
            }
            if(Mid.value(38) == "45")
            {
                write_into_PLC_16_Hold(1659,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1659,"1");
            }
            write_into_PLC_16_Hold(1689,Mid.value(39));

            write_into_PLC_32_Hold(1620,Mid.value(40));
            if(Mid.value(41) == "45")
            {
                write_into_PLC_16_Hold(1660,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1660,"1");
            }
            if(Mid.value(42) == "45")
            {
                write_into_PLC_16_Hold(1661,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1661,"1");
            }
            write_into_PLC_16_Hold(1690,Mid.value(43));

            write_into_PLC_32_Hold(1622,"0");
            write_into_PLC_16_Hold(1662,"0");
            write_into_PLC_16_Hold(1663,"0");
            write_into_PLC_16_Hold(1691,"0");

            write_into_PLC_32_Hold(1624,"0");
            write_into_PLC_16_Hold(1664,"0");
            write_into_PLC_16_Hold(1665,"0");
            write_into_PLC_16_Hold(1692,"0");

            write_into_PLC_32_Hold(1626,"0");
            write_into_PLC_16_Hold(1666,"0");
            write_into_PLC_16_Hold(1667,"0");
            write_into_PLC_16_Hold(1693,"0");

            write_into_PLC_32_Hold(1628,"0");
            write_into_PLC_16_Hold(1668,"0");
            write_into_PLC_16_Hold(1669,"0");
            write_into_PLC_16_Hold(1694,"0");

            write_into_PLC_32_Hold(1630,"0");
            write_into_PLC_16_Hold(1670,"0");
            write_into_PLC_16_Hold(1671,"0");
            write_into_PLC_16_Hold(1695,"0");

            write_into_PLC_32_Hold(1632,"0");
            write_into_PLC_16_Hold(1672,"0");
            write_into_PLC_16_Hold(1673,"0");
            write_into_PLC_16_Hold(1696,"0");

            write_into_PLC_32_Hold(1634,"0");
            write_into_PLC_16_Hold(1674,"0");
            write_into_PLC_16_Hold(1675,"0");
            write_into_PLC_16_Hold(1697,"0");

            write_into_PLC_32_Hold(1636,"0");
            write_into_PLC_16_Hold(1676,"0");
            write_into_PLC_16_Hold(1677,"0");
            write_into_PLC_16_Hold(1698,"0");

            write_into_PLC_32_Hold(1638,"0");
            write_into_PLC_16_Hold(1678,"0");
            write_into_PLC_16_Hold(1679,"0");
            write_into_PLC_16_Hold(1699,"0");

            break;
        }
        case 12:
        {
            write_into_PLC_32_Hold(1600,Mid.value(0));
            if(Mid.value(1) == "45")
            {
                write_into_PLC_16_Hold(1640,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1640,"1");
            }
            if(Mid.value(2) == "45")
            {
                write_into_PLC_16_Hold(1641,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1641,"1");
            }
            write_into_PLC_16_Hold(1680,Mid.value(3));

            write_into_PLC_32_Hold(1602,Mid.value(4));
            if(Mid.value(5) == "45")
            {
                write_into_PLC_16_Hold(1642,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1642,"1");
            }
            if(Mid.value(6) == "45")
            {
                write_into_PLC_16_Hold(1643,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1643,"1");
            }
            write_into_PLC_16_Hold(1681,Mid.value(7));

            write_into_PLC_32_Hold(1604,Mid.value(8));
            if(Mid.value(9) == "45")
            {
                write_into_PLC_16_Hold(1644,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1644,"1");
            }
            if(Mid.value(10) == "45")
            {
                write_into_PLC_16_Hold(1645,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1645,"1");
            }
            write_into_PLC_16_Hold(1682,Mid.value(11));

            write_into_PLC_32_Hold(1606,Mid.value(12));
            if(Mid.value(13) == "45")
            {
                write_into_PLC_16_Hold(1646,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1646,"1");
            }
            if(Mid.value(14) == "45")
            {
                write_into_PLC_16_Hold(1647,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1647,"1");
            }
            write_into_PLC_16_Hold(1683,Mid.value(15));

            write_into_PLC_32_Hold(1608,Mid.value(16));
            if(Mid.value(17) == "45")
            {
                write_into_PLC_16_Hold(1648,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1648,"1");
            }
            if(Mid.value(18) == "45")
            {
                write_into_PLC_16_Hold(1649,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1649,"1");
            }
            write_into_PLC_16_Hold(1684,Mid.value(19));

            write_into_PLC_32_Hold(1610,Mid.value(20));
            if(Mid.value(21) == "45")
            {
                write_into_PLC_16_Hold(1650,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1650,"1");
            }
            if(Mid.value(22) == "45")
            {
                write_into_PLC_16_Hold(1651,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1651,"1");
            }
            write_into_PLC_16_Hold(1685,Mid.value(23));

            write_into_PLC_32_Hold(1612,Mid.value(24));
            if(Mid.value(25) == "45")
            {
                write_into_PLC_16_Hold(1652,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1652,"1");
            }
            if(Mid.value(26) == "45")
            {
                write_into_PLC_16_Hold(1653,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1653,"1");
            }
            write_into_PLC_16_Hold(1686,Mid.value(27));

            write_into_PLC_32_Hold(1614,Mid.value(28));
            if(Mid.value(29) == "45")
            {
                write_into_PLC_16_Hold(1654,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1654,"1");
            }
            if(Mid.value(30) == "45")
            {
                write_into_PLC_16_Hold(1655,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1655,"1");
            }
            write_into_PLC_16_Hold(1687,Mid.value(31));

            write_into_PLC_32_Hold(1616,Mid.value(32));
            if(Mid.value(33) == "45")
            {
                write_into_PLC_16_Hold(1656,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1656,"1");
            }
            if(Mid.value(34) == "45")
            {
                write_into_PLC_16_Hold(1657,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1657,"1");
            }
            write_into_PLC_16_Hold(1688,Mid.value(35));

            write_into_PLC_32_Hold(1618,Mid.value(36));
            if(Mid.value(37) == "45")
            {
                write_into_PLC_16_Hold(1658,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1658,"1");
            }
            if(Mid.value(38) == "45")
            {
                write_into_PLC_16_Hold(1659,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1659,"1");
            }
            write_into_PLC_16_Hold(1689,Mid.value(39));

            write_into_PLC_32_Hold(1620,Mid.value(40));
            if(Mid.value(41) == "45")
            {
                write_into_PLC_16_Hold(1660,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1660,"1");
            }
            if(Mid.value(42) == "45")
            {
                write_into_PLC_16_Hold(1661,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1661,"1");
            }
            write_into_PLC_16_Hold(1690,Mid.value(43));

            write_into_PLC_32_Hold(1622,Mid.value(44));
            if(Mid.value(45) == "45")
            {
                write_into_PLC_16_Hold(1662,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1662,"1");
            }
            if(Mid.value(46) == "45")
            {
                write_into_PLC_16_Hold(1663,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1663,"1");
            }
            write_into_PLC_16_Hold(1691,Mid.value(47));

            write_into_PLC_32_Hold(1624,"0");
            write_into_PLC_16_Hold(1664,"0");
            write_into_PLC_16_Hold(1665,"0");
            write_into_PLC_16_Hold(1692,"0");

            write_into_PLC_32_Hold(1626,"0");
            write_into_PLC_16_Hold(1666,"0");
            write_into_PLC_16_Hold(1667,"0");
            write_into_PLC_16_Hold(1693,"0");

            write_into_PLC_32_Hold(1628,"0");
            write_into_PLC_16_Hold(1668,"0");
            write_into_PLC_16_Hold(1669,"0");
            write_into_PLC_16_Hold(1694,"0");

            write_into_PLC_32_Hold(1630,"0");
            write_into_PLC_16_Hold(1670,"0");
            write_into_PLC_16_Hold(1671,"0");
            write_into_PLC_16_Hold(1695,"0");

            write_into_PLC_32_Hold(1632,"0");
            write_into_PLC_16_Hold(1672,"0");
            write_into_PLC_16_Hold(1673,"0");
            write_into_PLC_16_Hold(1696,"0");

            write_into_PLC_32_Hold(1634,"0");
            write_into_PLC_16_Hold(1674,"0");
            write_into_PLC_16_Hold(1675,"0");
            write_into_PLC_16_Hold(1697,"0");

            write_into_PLC_32_Hold(1636,"0");
            write_into_PLC_16_Hold(1676,"0");
            write_into_PLC_16_Hold(1677,"0");
            write_into_PLC_16_Hold(1698,"0");

            write_into_PLC_32_Hold(1638,"0");
            write_into_PLC_16_Hold(1678,"0");
            write_into_PLC_16_Hold(1679,"0");
            write_into_PLC_16_Hold(1699,"0");

            break;
        }
        case 13:
        {
            write_into_PLC_32_Hold(1600,Mid.value(0));
            if(Mid.value(1) == "45")
            {
                write_into_PLC_16_Hold(1640,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1640,"1");
            }
            if(Mid.value(2) == "45")
            {
                write_into_PLC_16_Hold(1641,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1641,"1");
            }
            write_into_PLC_16_Hold(1680,Mid.value(3));

            write_into_PLC_32_Hold(1602,Mid.value(4));
            if(Mid.value(5) == "45")
            {
                write_into_PLC_16_Hold(1642,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1642,"1");
            }
            if(Mid.value(6) == "45")
            {
                write_into_PLC_16_Hold(1643,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1643,"1");
            }
            write_into_PLC_16_Hold(1681,Mid.value(7));

            write_into_PLC_32_Hold(1604,Mid.value(8));
            if(Mid.value(9) == "45")
            {
                write_into_PLC_16_Hold(1644,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1644,"1");
            }
            if(Mid.value(10) == "45")
            {
                write_into_PLC_16_Hold(1645,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1645,"1");
            }
            write_into_PLC_16_Hold(1682,Mid.value(11));

            write_into_PLC_32_Hold(1606,Mid.value(12));
            if(Mid.value(13) == "45")
            {
                write_into_PLC_16_Hold(1646,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1646,"1");
            }
            if(Mid.value(14) == "45")
            {
                write_into_PLC_16_Hold(1647,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1647,"1");
            }
            write_into_PLC_16_Hold(1683,Mid.value(15));

            write_into_PLC_32_Hold(1608,Mid.value(16));
            if(Mid.value(17) == "45")
            {
                write_into_PLC_16_Hold(1648,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1648,"1");
            }
            if(Mid.value(18) == "45")
            {
                write_into_PLC_16_Hold(1649,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1649,"1");
            }
            write_into_PLC_16_Hold(1684,Mid.value(19));

            write_into_PLC_32_Hold(1610,Mid.value(20));
            if(Mid.value(21) == "45")
            {
                write_into_PLC_16_Hold(1650,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1650,"1");
            }
            if(Mid.value(22) == "45")
            {
                write_into_PLC_16_Hold(1651,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1651,"1");
            }
            write_into_PLC_16_Hold(1685,Mid.value(23));

            write_into_PLC_32_Hold(1612,Mid.value(24));
            if(Mid.value(25) == "45")
            {
                write_into_PLC_16_Hold(1652,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1652,"1");
            }
            if(Mid.value(26) == "45")
            {
                write_into_PLC_16_Hold(1653,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1653,"1");
            }
            write_into_PLC_16_Hold(1686,Mid.value(27));

            write_into_PLC_32_Hold(1614,Mid.value(28));
            if(Mid.value(29) == "45")
            {
                write_into_PLC_16_Hold(1654,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1654,"1");
            }
            if(Mid.value(30) == "45")
            {
                write_into_PLC_16_Hold(1655,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1655,"1");
            }
            write_into_PLC_16_Hold(1687,Mid.value(31));

            write_into_PLC_32_Hold(1616,Mid.value(32));
            if(Mid.value(33) == "45")
            {
                write_into_PLC_16_Hold(1656,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1656,"1");
            }
            if(Mid.value(34) == "45")
            {
                write_into_PLC_16_Hold(1657,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1657,"1");
            }
            write_into_PLC_16_Hold(1688,Mid.value(35));

            write_into_PLC_32_Hold(1618,Mid.value(36));
            if(Mid.value(37) == "45")
            {
                write_into_PLC_16_Hold(1658,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1658,"1");
            }
            if(Mid.value(38) == "45")
            {
                write_into_PLC_16_Hold(1659,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1659,"1");
            }
            write_into_PLC_16_Hold(1689,Mid.value(39));

            write_into_PLC_32_Hold(1620,Mid.value(40));
            if(Mid.value(41) == "45")
            {
                write_into_PLC_16_Hold(1660,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1660,"1");
            }
            if(Mid.value(42) == "45")
            {
                write_into_PLC_16_Hold(1661,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1661,"1");
            }
            write_into_PLC_16_Hold(1690,Mid.value(43));

            write_into_PLC_32_Hold(1622,Mid.value(44));
            if(Mid.value(45) == "45")
            {
                write_into_PLC_16_Hold(1662,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1662,"1");
            }
            if(Mid.value(46) == "45")
            {
                write_into_PLC_16_Hold(1663,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1663,"1");
            }
            write_into_PLC_16_Hold(1691,Mid.value(47));

            write_into_PLC_32_Hold(1624,Mid.value(48));
            if(Mid.value(49) == "45")
            {
                write_into_PLC_16_Hold(1664,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1664,"1");
            }
            if(Mid.value(50) == "45")
            {
                write_into_PLC_16_Hold(1665,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1665,"1");
            }
            write_into_PLC_16_Hold(1692,Mid.value(51));

            write_into_PLC_32_Hold(1626,"0");
            write_into_PLC_16_Hold(1666,"0");
            write_into_PLC_16_Hold(1667,"0");
            write_into_PLC_16_Hold(1693,"0");

            write_into_PLC_32_Hold(1628,"0");
            write_into_PLC_16_Hold(1668,"0");
            write_into_PLC_16_Hold(1669,"0");
            write_into_PLC_16_Hold(1694,"0");

            write_into_PLC_32_Hold(1630,"0");
            write_into_PLC_16_Hold(1670,"0");
            write_into_PLC_16_Hold(1671,"0");
            write_into_PLC_16_Hold(1695,"0");

            write_into_PLC_32_Hold(1632,"0");
            write_into_PLC_16_Hold(1672,"0");
            write_into_PLC_16_Hold(1673,"0");
            write_into_PLC_16_Hold(1696,"0");

            write_into_PLC_32_Hold(1634,"0");
            write_into_PLC_16_Hold(1674,"0");
            write_into_PLC_16_Hold(1675,"0");
            write_into_PLC_16_Hold(1697,"0");

            write_into_PLC_32_Hold(1636,"0");
            write_into_PLC_16_Hold(1676,"0");
            write_into_PLC_16_Hold(1677,"0");
            write_into_PLC_16_Hold(1698,"0");

            write_into_PLC_32_Hold(1638,"0");
            write_into_PLC_16_Hold(1678,"0");
            write_into_PLC_16_Hold(1679,"0");
            write_into_PLC_16_Hold(1699,"0");

            break;
        }
        case 14:
        {
            write_into_PLC_32_Hold(1600,Mid.value(0));
            if(Mid.value(1) == "45")
            {
                write_into_PLC_16_Hold(1640,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1640,"1");
            }
            if(Mid.value(2) == "45")
            {
                write_into_PLC_16_Hold(1641,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1641,"1");
            }
            write_into_PLC_16_Hold(1680,Mid.value(3));

            write_into_PLC_32_Hold(1602,Mid.value(4));
            if(Mid.value(5) == "45")
            {
                write_into_PLC_16_Hold(1642,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1642,"1");
            }
            if(Mid.value(6) == "45")
            {
                write_into_PLC_16_Hold(1643,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1643,"1");
            }
            write_into_PLC_16_Hold(1681,Mid.value(7));

            write_into_PLC_32_Hold(1604,Mid.value(8));
            if(Mid.value(9) == "45")
            {
                write_into_PLC_16_Hold(1644,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1644,"1");
            }
            if(Mid.value(10) == "45")
            {
                write_into_PLC_16_Hold(1645,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1645,"1");
            }
            write_into_PLC_16_Hold(1682,Mid.value(11));

            write_into_PLC_32_Hold(1606,Mid.value(12));
            if(Mid.value(13) == "45")
            {
                write_into_PLC_16_Hold(1646,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1646,"1");
            }
            if(Mid.value(14) == "45")
            {
                write_into_PLC_16_Hold(1647,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1647,"1");
            }
            write_into_PLC_16_Hold(1683,Mid.value(15));

            write_into_PLC_32_Hold(1608,Mid.value(16));
            if(Mid.value(17) == "45")
            {
                write_into_PLC_16_Hold(1648,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1648,"1");
            }
            if(Mid.value(18) == "45")
            {
                write_into_PLC_16_Hold(1649,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1649,"1");
            }
            write_into_PLC_16_Hold(1684,Mid.value(19));

            write_into_PLC_32_Hold(1610,Mid.value(20));
            if(Mid.value(21) == "45")
            {
                write_into_PLC_16_Hold(1650,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1650,"1");
            }
            if(Mid.value(22) == "45")
            {
                write_into_PLC_16_Hold(1651,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1651,"1");
            }
            write_into_PLC_16_Hold(1685,Mid.value(23));

            write_into_PLC_32_Hold(1612,Mid.value(24));
            if(Mid.value(25) == "45")
            {
                write_into_PLC_16_Hold(1652,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1652,"1");
            }
            if(Mid.value(26) == "45")
            {
                write_into_PLC_16_Hold(1653,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1653,"1");
            }
            write_into_PLC_16_Hold(1686,Mid.value(27));

            write_into_PLC_32_Hold(1614,Mid.value(28));
            if(Mid.value(29) == "45")
            {
                write_into_PLC_16_Hold(1654,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1654,"1");
            }
            if(Mid.value(30) == "45")
            {
                write_into_PLC_16_Hold(1655,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1655,"1");
            }
            write_into_PLC_16_Hold(1687,Mid.value(31));

            write_into_PLC_32_Hold(1616,Mid.value(32));
            if(Mid.value(33) == "45")
            {
                write_into_PLC_16_Hold(1656,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1656,"1");
            }
            if(Mid.value(34) == "45")
            {
                write_into_PLC_16_Hold(1657,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1657,"1");
            }
            write_into_PLC_16_Hold(1688,Mid.value(35));

            write_into_PLC_32_Hold(1618,Mid.value(36));
            if(Mid.value(37) == "45")
            {
                write_into_PLC_16_Hold(1658,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1658,"1");
            }
            if(Mid.value(38) == "45")
            {
                write_into_PLC_16_Hold(1659,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1659,"1");
            }
            write_into_PLC_16_Hold(1689,Mid.value(39));

            write_into_PLC_32_Hold(1620,Mid.value(40));
            if(Mid.value(41) == "45")
            {
                write_into_PLC_16_Hold(1660,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1660,"1");
            }
            if(Mid.value(42) == "45")
            {
                write_into_PLC_16_Hold(1661,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1661,"1");
            }
            write_into_PLC_16_Hold(1690,Mid.value(43));

            write_into_PLC_32_Hold(1622,Mid.value(44));
            if(Mid.value(45) == "45")
            {
                write_into_PLC_16_Hold(1662,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1662,"1");
            }
            if(Mid.value(46) == "45")
            {
                write_into_PLC_16_Hold(1663,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1663,"1");
            }
            write_into_PLC_16_Hold(1691,Mid.value(47));

            write_into_PLC_32_Hold(1624,Mid.value(48));
            if(Mid.value(49) == "45")
            {
                write_into_PLC_16_Hold(1664,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1664,"1");
            }
            if(Mid.value(50) == "45")
            {
                write_into_PLC_16_Hold(1665,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1665,"1");
            }
            write_into_PLC_16_Hold(1692,Mid.value(51));

            write_into_PLC_32_Hold(1626,Mid.value(52));
            if(Mid.value(53) == "45")
            {
                write_into_PLC_16_Hold(1666,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1666,"1");
            }
            if(Mid.value(54) == "45")
            {
                write_into_PLC_16_Hold(1667,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1667,"1");
            }
            write_into_PLC_16_Hold(1693,Mid.value(55));

            write_into_PLC_32_Hold(1628,"0");
            write_into_PLC_16_Hold(1668,"0");
            write_into_PLC_16_Hold(1669,"0");
            write_into_PLC_16_Hold(1694,"0");

            write_into_PLC_32_Hold(1630,"0");
            write_into_PLC_16_Hold(1670,"0");
            write_into_PLC_16_Hold(1671,"0");
            write_into_PLC_16_Hold(1695,"0");

            write_into_PLC_32_Hold(1632,"0");
            write_into_PLC_16_Hold(1672,"0");
            write_into_PLC_16_Hold(1673,"0");
            write_into_PLC_16_Hold(1696,"0");

            write_into_PLC_32_Hold(1634,"0");
            write_into_PLC_16_Hold(1674,"0");
            write_into_PLC_16_Hold(1675,"0");
            write_into_PLC_16_Hold(1697,"0");

            write_into_PLC_32_Hold(1636,"0");
            write_into_PLC_16_Hold(1676,"0");
            write_into_PLC_16_Hold(1677,"0");
            write_into_PLC_16_Hold(1698,"0");

            write_into_PLC_32_Hold(1638,"0");
            write_into_PLC_16_Hold(1678,"0");
            write_into_PLC_16_Hold(1679,"0");
            write_into_PLC_16_Hold(1699,"0");

            break;
        }
        case 15:
        {
            write_into_PLC_32_Hold(1600,Mid.value(0));
            if(Mid.value(1) == "45")
            {
                write_into_PLC_16_Hold(1640,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1640,"1");
            }
            if(Mid.value(2) == "45")
            {
                write_into_PLC_16_Hold(1641,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1641,"1");
            }
            write_into_PLC_16_Hold(1680,Mid.value(3));

            write_into_PLC_32_Hold(1602,Mid.value(4));
            if(Mid.value(5) == "45")
            {
                write_into_PLC_16_Hold(1642,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1642,"1");
            }
            if(Mid.value(6) == "45")
            {
                write_into_PLC_16_Hold(1643,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1643,"1");
            }
            write_into_PLC_16_Hold(1681,Mid.value(7));

            write_into_PLC_32_Hold(1604,Mid.value(8));
            if(Mid.value(9) == "45")
            {
                write_into_PLC_16_Hold(1644,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1644,"1");
            }
            if(Mid.value(10) == "45")
            {
                write_into_PLC_16_Hold(1645,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1645,"1");
            }
            write_into_PLC_16_Hold(1682,Mid.value(11));

            write_into_PLC_32_Hold(1606,Mid.value(12));
            if(Mid.value(13) == "45")
            {
                write_into_PLC_16_Hold(1646,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1646,"1");
            }
            if(Mid.value(14) == "45")
            {
                write_into_PLC_16_Hold(1647,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1647,"1");
            }
            write_into_PLC_16_Hold(1683,Mid.value(15));

            write_into_PLC_32_Hold(1608,Mid.value(16));
            if(Mid.value(17) == "45")
            {
                write_into_PLC_16_Hold(1648,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1648,"1");
            }
            if(Mid.value(18) == "45")
            {
                write_into_PLC_16_Hold(1649,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1649,"1");
            }
            write_into_PLC_16_Hold(1684,Mid.value(19));

            write_into_PLC_32_Hold(1610,Mid.value(20));
            if(Mid.value(21) == "45")
            {
                write_into_PLC_16_Hold(1650,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1650,"1");
            }
            if(Mid.value(22) == "45")
            {
                write_into_PLC_16_Hold(1651,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1651,"1");
            }
            write_into_PLC_16_Hold(1685,Mid.value(23));

            write_into_PLC_32_Hold(1612,Mid.value(24));
            if(Mid.value(25) == "45")
            {
                write_into_PLC_16_Hold(1652,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1652,"1");
            }
            if(Mid.value(26) == "45")
            {
                write_into_PLC_16_Hold(1653,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1653,"1");
            }
            write_into_PLC_16_Hold(1686,Mid.value(27));

            write_into_PLC_32_Hold(1614,Mid.value(28));
            if(Mid.value(29) == "45")
            {
                write_into_PLC_16_Hold(1654,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1654,"1");
            }
            if(Mid.value(30) == "45")
            {
                write_into_PLC_16_Hold(1655,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1655,"1");
            }
            write_into_PLC_16_Hold(1687,Mid.value(31));

            write_into_PLC_32_Hold(1616,Mid.value(32));
            if(Mid.value(33) == "45")
            {
                write_into_PLC_16_Hold(1656,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1656,"1");
            }
            if(Mid.value(34) == "45")
            {
                write_into_PLC_16_Hold(1657,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1657,"1");
            }
            write_into_PLC_16_Hold(1688,Mid.value(35));

            write_into_PLC_32_Hold(1618,Mid.value(36));
            if(Mid.value(37) == "45")
            {
                write_into_PLC_16_Hold(1658,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1658,"1");
            }
            if(Mid.value(38) == "45")
            {
                write_into_PLC_16_Hold(1659,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1659,"1");
            }
            write_into_PLC_16_Hold(1689,Mid.value(39));

            write_into_PLC_32_Hold(1620,Mid.value(40));
            if(Mid.value(41) == "45")
            {
                write_into_PLC_16_Hold(1660,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1660,"1");
            }
            if(Mid.value(42) == "45")
            {
                write_into_PLC_16_Hold(1661,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1661,"1");
            }
            write_into_PLC_16_Hold(1690,Mid.value(43));

            write_into_PLC_32_Hold(1622,Mid.value(44));
            if(Mid.value(45) == "45")
            {
                write_into_PLC_16_Hold(1662,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1662,"1");
            }
            if(Mid.value(46) == "45")
            {
                write_into_PLC_16_Hold(1663,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1663,"1");
            }
            write_into_PLC_16_Hold(1691,Mid.value(47));

            write_into_PLC_32_Hold(1624,Mid.value(48));
            if(Mid.value(49) == "45")
            {
                write_into_PLC_16_Hold(1664,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1664,"1");
            }
            if(Mid.value(50) == "45")
            {
                write_into_PLC_16_Hold(1665,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1665,"1");
            }
            write_into_PLC_16_Hold(1692,Mid.value(51));

            write_into_PLC_32_Hold(1626,Mid.value(52));
            if(Mid.value(53) == "45")
            {
                write_into_PLC_16_Hold(1666,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1666,"1");
            }
            if(Mid.value(54) == "45")
            {
                write_into_PLC_16_Hold(1667,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1667,"1");
            }
            write_into_PLC_16_Hold(1693,Mid.value(55));

            write_into_PLC_32_Hold(1628,Mid.value(56));
            if(Mid.value(57) == "45")
            {
                write_into_PLC_16_Hold(1668,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1668,"1");
            }
            if(Mid.value(58) == "45")
            {
                write_into_PLC_16_Hold(1669,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1669,"1");
            }
            write_into_PLC_16_Hold(1694,Mid.value(59));

            write_into_PLC_32_Hold(1630,"0");
            write_into_PLC_16_Hold(1670,"0");
            write_into_PLC_16_Hold(1671,"0");
            write_into_PLC_16_Hold(1695,"0");

            write_into_PLC_32_Hold(1632,"0");
            write_into_PLC_16_Hold(1672,"0");
            write_into_PLC_16_Hold(1673,"0");
            write_into_PLC_16_Hold(1696,"0");

            write_into_PLC_32_Hold(1634,"0");
            write_into_PLC_16_Hold(1674,"0");
            write_into_PLC_16_Hold(1675,"0");
            write_into_PLC_16_Hold(1697,"0");

            write_into_PLC_32_Hold(1636,"0");
            write_into_PLC_16_Hold(1676,"0");
            write_into_PLC_16_Hold(1677,"0");
            write_into_PLC_16_Hold(1698,"0");

            write_into_PLC_32_Hold(1638,"0");
            write_into_PLC_16_Hold(1678,"0");
            write_into_PLC_16_Hold(1679,"0");
            write_into_PLC_16_Hold(1699,"0");

            break;
        }
        case 16:
        {
            write_into_PLC_32_Hold(1600,Mid.value(0));
            if(Mid.value(1) == "45")
            {
                write_into_PLC_16_Hold(1640,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1640,"1");
            }
            if(Mid.value(2) == "45")
            {
                write_into_PLC_16_Hold(1641,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1641,"1");
            }
            write_into_PLC_16_Hold(1680,Mid.value(3));

            write_into_PLC_32_Hold(1602,Mid.value(4));
            if(Mid.value(5) == "45")
            {
                write_into_PLC_16_Hold(1642,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1642,"1");
            }
            if(Mid.value(6) == "45")
            {
                write_into_PLC_16_Hold(1643,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1643,"1");
            }
            write_into_PLC_16_Hold(1681,Mid.value(7));

            write_into_PLC_32_Hold(1604,Mid.value(8));
            if(Mid.value(9) == "45")
            {
                write_into_PLC_16_Hold(1644,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1644,"1");
            }
            if(Mid.value(10) == "45")
            {
                write_into_PLC_16_Hold(1645,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1645,"1");
            }
            write_into_PLC_16_Hold(1682,Mid.value(11));

            write_into_PLC_32_Hold(1606,Mid.value(12));
            if(Mid.value(13) == "45")
            {
                write_into_PLC_16_Hold(1646,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1646,"1");
            }
            if(Mid.value(14) == "45")
            {
                write_into_PLC_16_Hold(1647,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1647,"1");
            }
            write_into_PLC_16_Hold(1683,Mid.value(15));

            write_into_PLC_32_Hold(1608,Mid.value(16));
            if(Mid.value(17) == "45")
            {
                write_into_PLC_16_Hold(1648,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1648,"1");
            }
            if(Mid.value(18) == "45")
            {
                write_into_PLC_16_Hold(1649,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1649,"1");
            }
            write_into_PLC_16_Hold(1684,Mid.value(19));

            write_into_PLC_32_Hold(1610,Mid.value(20));
            if(Mid.value(21) == "45")
            {
                write_into_PLC_16_Hold(1650,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1650,"1");
            }
            if(Mid.value(22) == "45")
            {
                write_into_PLC_16_Hold(1651,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1651,"1");
            }
            write_into_PLC_16_Hold(1685,Mid.value(23));

            write_into_PLC_32_Hold(1612,Mid.value(24));
            if(Mid.value(25) == "45")
            {
                write_into_PLC_16_Hold(1652,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1652,"1");
            }
            if(Mid.value(26) == "45")
            {
                write_into_PLC_16_Hold(1653,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1653,"1");
            }
            write_into_PLC_16_Hold(1686,Mid.value(27));

            write_into_PLC_32_Hold(1614,Mid.value(28));
            if(Mid.value(29) == "45")
            {
                write_into_PLC_16_Hold(1654,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1654,"1");
            }
            if(Mid.value(30) == "45")
            {
                write_into_PLC_16_Hold(1655,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1655,"1");
            }
            write_into_PLC_16_Hold(1687,Mid.value(31));

            write_into_PLC_32_Hold(1616,Mid.value(32));
            if(Mid.value(33) == "45")
            {
                write_into_PLC_16_Hold(1656,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1656,"1");
            }
            if(Mid.value(34) == "45")
            {
                write_into_PLC_16_Hold(1657,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1657,"1");
            }
            write_into_PLC_16_Hold(1688,Mid.value(35));

            write_into_PLC_32_Hold(1618,Mid.value(36));
            if(Mid.value(37) == "45")
            {
                write_into_PLC_16_Hold(1658,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1658,"1");
            }
            if(Mid.value(38) == "45")
            {
                write_into_PLC_16_Hold(1659,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1659,"1");
            }
            write_into_PLC_16_Hold(1689,Mid.value(39));

            write_into_PLC_32_Hold(1620,Mid.value(40));
            if(Mid.value(41) == "45")
            {
                write_into_PLC_16_Hold(1660,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1660,"1");
            }
            if(Mid.value(42) == "45")
            {
                write_into_PLC_16_Hold(1661,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1661,"1");
            }
            write_into_PLC_16_Hold(1690,Mid.value(43));

            write_into_PLC_32_Hold(1622,Mid.value(44));
            if(Mid.value(45) == "45")
            {
                write_into_PLC_16_Hold(1662,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1662,"1");
            }
            if(Mid.value(46) == "45")
            {
                write_into_PLC_16_Hold(1663,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1663,"1");
            }
            write_into_PLC_16_Hold(1691,Mid.value(47));

            write_into_PLC_32_Hold(1624,Mid.value(48));
            if(Mid.value(49) == "45")
            {
                write_into_PLC_16_Hold(1664,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1664,"1");
            }
            if(Mid.value(50) == "45")
            {
                write_into_PLC_16_Hold(1665,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1665,"1");
            }
            write_into_PLC_16_Hold(1692,Mid.value(51));

            write_into_PLC_32_Hold(1626,Mid.value(52));
            if(Mid.value(53) == "45")
            {
                write_into_PLC_16_Hold(1666,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1666,"1");
            }
            if(Mid.value(54) == "45")
            {
                write_into_PLC_16_Hold(1667,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1667,"1");
            }
            write_into_PLC_16_Hold(1693,Mid.value(55));

            write_into_PLC_32_Hold(1628,Mid.value(56));
            if(Mid.value(57) == "45")
            {
                write_into_PLC_16_Hold(1668,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1668,"1");
            }
            if(Mid.value(58) == "45")
            {
                write_into_PLC_16_Hold(1669,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1669,"1");
            }
            write_into_PLC_16_Hold(1694,Mid.value(59));

            write_into_PLC_32_Hold(1630,Mid.value(60));
            if(Mid.value(61) == "45")
            {
                write_into_PLC_16_Hold(1670,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1670,"1");
            }
            if(Mid.value(62) == "45")
            {
                write_into_PLC_16_Hold(1671,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1671,"1");
            }
            write_into_PLC_16_Hold(1695,Mid.value(63));

            write_into_PLC_32_Hold(1632,"0");
            write_into_PLC_16_Hold(1672,"0");
            write_into_PLC_16_Hold(1673,"0");
            write_into_PLC_16_Hold(1696,"0");

            write_into_PLC_32_Hold(1634,"0");
            write_into_PLC_16_Hold(1674,"0");
            write_into_PLC_16_Hold(1675,"0");
            write_into_PLC_16_Hold(1697,"0");

            write_into_PLC_32_Hold(1636,"0");
            write_into_PLC_16_Hold(1676,"0");
            write_into_PLC_16_Hold(1677,"0");
            write_into_PLC_16_Hold(1698,"0");

            write_into_PLC_32_Hold(1638,"0");
            write_into_PLC_16_Hold(1678,"0");
            write_into_PLC_16_Hold(1679,"0");
            write_into_PLC_16_Hold(1699,"0");

            break;
        }
        case 17:
        {
            write_into_PLC_32_Hold(1600,Mid.value(0));
            if(Mid.value(1) == "45")
            {
                write_into_PLC_16_Hold(1640,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1640,"1");
            }
            if(Mid.value(2) == "45")
            {
                write_into_PLC_16_Hold(1641,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1641,"1");
            }
            write_into_PLC_16_Hold(1680,Mid.value(3));

            write_into_PLC_32_Hold(1602,Mid.value(4));
            if(Mid.value(5) == "45")
            {
                write_into_PLC_16_Hold(1642,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1642,"1");
            }
            if(Mid.value(6) == "45")
            {
                write_into_PLC_16_Hold(1643,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1643,"1");
            }
            write_into_PLC_16_Hold(1681,Mid.value(7));

            write_into_PLC_32_Hold(1604,Mid.value(8));
            if(Mid.value(9) == "45")
            {
                write_into_PLC_16_Hold(1644,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1644,"1");
            }
            if(Mid.value(10) == "45")
            {
                write_into_PLC_16_Hold(1645,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1645,"1");
            }
            write_into_PLC_16_Hold(1682,Mid.value(11));

            write_into_PLC_32_Hold(1606,Mid.value(12));
            if(Mid.value(13) == "45")
            {
                write_into_PLC_16_Hold(1646,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1646,"1");
            }
            if(Mid.value(14) == "45")
            {
                write_into_PLC_16_Hold(1647,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1647,"1");
            }
            write_into_PLC_16_Hold(1683,Mid.value(15));

            write_into_PLC_32_Hold(1608,Mid.value(16));
            if(Mid.value(17) == "45")
            {
                write_into_PLC_16_Hold(1648,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1648,"1");
            }
            if(Mid.value(18) == "45")
            {
                write_into_PLC_16_Hold(1649,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1649,"1");
            }
            write_into_PLC_16_Hold(1684,Mid.value(19));

            write_into_PLC_32_Hold(1610,Mid.value(20));
            if(Mid.value(21) == "45")
            {
                write_into_PLC_16_Hold(1650,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1650,"1");
            }
            if(Mid.value(22) == "45")
            {
                write_into_PLC_16_Hold(1651,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1651,"1");
            }
            write_into_PLC_16_Hold(1685,Mid.value(23));

            write_into_PLC_32_Hold(1612,Mid.value(24));
            if(Mid.value(25) == "45")
            {
                write_into_PLC_16_Hold(1652,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1652,"1");
            }
            if(Mid.value(26) == "45")
            {
                write_into_PLC_16_Hold(1653,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1653,"1");
            }
            write_into_PLC_16_Hold(1686,Mid.value(27));

            write_into_PLC_32_Hold(1614,Mid.value(28));
            if(Mid.value(29) == "45")
            {
                write_into_PLC_16_Hold(1654,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1654,"1");
            }
            if(Mid.value(30) == "45")
            {
                write_into_PLC_16_Hold(1655,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1655,"1");
            }
            write_into_PLC_16_Hold(1687,Mid.value(31));

            write_into_PLC_32_Hold(1616,Mid.value(32));
            if(Mid.value(33) == "45")
            {
                write_into_PLC_16_Hold(1656,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1656,"1");
            }
            if(Mid.value(34) == "45")
            {
                write_into_PLC_16_Hold(1657,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1657,"1");
            }
            write_into_PLC_16_Hold(1688,Mid.value(35));

            write_into_PLC_32_Hold(1618,Mid.value(36));
            if(Mid.value(37) == "45")
            {
                write_into_PLC_16_Hold(1658,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1658,"1");
            }
            if(Mid.value(38) == "45")
            {
                write_into_PLC_16_Hold(1659,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1659,"1");
            }
            write_into_PLC_16_Hold(1689,Mid.value(39));

            write_into_PLC_32_Hold(1620,Mid.value(40));
            if(Mid.value(41) == "45")
            {
                write_into_PLC_16_Hold(1660,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1660,"1");
            }
            if(Mid.value(42) == "45")
            {
                write_into_PLC_16_Hold(1661,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1661,"1");
            }
            write_into_PLC_16_Hold(1690,Mid.value(43));

            write_into_PLC_32_Hold(1622,Mid.value(44));
            if(Mid.value(45) == "45")
            {
                write_into_PLC_16_Hold(1662,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1662,"1");
            }
            if(Mid.value(46) == "45")
            {
                write_into_PLC_16_Hold(1663,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1663,"1");
            }
            write_into_PLC_16_Hold(1691,Mid.value(47));

            write_into_PLC_32_Hold(1624,Mid.value(48));
            if(Mid.value(49) == "45")
            {
                write_into_PLC_16_Hold(1664,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1664,"1");
            }
            if(Mid.value(50) == "45")
            {
                write_into_PLC_16_Hold(1665,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1665,"1");
            }
            write_into_PLC_16_Hold(1692,Mid.value(51));

            write_into_PLC_32_Hold(1626,Mid.value(52));
            if(Mid.value(53) == "45")
            {
                write_into_PLC_16_Hold(1666,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1666,"1");
            }
            if(Mid.value(54) == "45")
            {
                write_into_PLC_16_Hold(1667,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1667,"1");
            }
            write_into_PLC_16_Hold(1693,Mid.value(55));

            write_into_PLC_32_Hold(1628,Mid.value(56));
            if(Mid.value(57) == "45")
            {
                write_into_PLC_16_Hold(1668,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1668,"1");
            }
            if(Mid.value(58) == "45")
            {
                write_into_PLC_16_Hold(1669,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1669,"1");
            }
            write_into_PLC_16_Hold(1694,Mid.value(59));

            write_into_PLC_32_Hold(1630,Mid.value(60));
            if(Mid.value(61) == "45")
            {
                write_into_PLC_16_Hold(1670,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1670,"1");
            }
            if(Mid.value(62) == "45")
            {
                write_into_PLC_16_Hold(1671,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1671,"1");
            }
            write_into_PLC_16_Hold(1695,Mid.value(63));
            write_into_PLC_32_Hold(1630,Mid.value(60));
            if(Mid.value(61) == "45")
            {
                write_into_PLC_16_Hold(1670,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1670,"1");
            }
            if(Mid.value(62) == "45")
            {
                write_into_PLC_16_Hold(1671,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1671,"1");
            }
            write_into_PLC_16_Hold(1695,Mid.value(63));

            write_into_PLC_32_Hold(1632,Mid.value(64));
            if(Mid.value(65) == "45")
            {
                write_into_PLC_16_Hold(1672,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1672,"1");
            }
            if(Mid.value(66) == "45")
            {
                write_into_PLC_16_Hold(1673,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1673,"1");
            }
            write_into_PLC_16_Hold(1696,Mid.value(67));

            write_into_PLC_32_Hold(1634,"0");
            write_into_PLC_16_Hold(1674,"0");
            write_into_PLC_16_Hold(1675,"0");
            write_into_PLC_16_Hold(1697,"0");

            write_into_PLC_32_Hold(1636,"0");
            write_into_PLC_16_Hold(1676,"0");
            write_into_PLC_16_Hold(1677,"0");
            write_into_PLC_16_Hold(1698,"0");

            write_into_PLC_32_Hold(1638,"0");
            write_into_PLC_16_Hold(1678,"0");
            write_into_PLC_16_Hold(1679,"0");
            write_into_PLC_16_Hold(1699,"0");

            break;
        }
        case 18:
        {
            write_into_PLC_32_Hold(1600,Mid.value(0));
            if(Mid.value(1) == "45")
            {
                write_into_PLC_16_Hold(1640,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1640,"1");
            }
            if(Mid.value(2) == "45")
            {
                write_into_PLC_16_Hold(1641,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1641,"1");
            }
            write_into_PLC_16_Hold(1680,Mid.value(3));

            write_into_PLC_32_Hold(1602,Mid.value(4));
            if(Mid.value(5) == "45")
            {
                write_into_PLC_16_Hold(1642,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1642,"1");
            }
            if(Mid.value(6) == "45")
            {
                write_into_PLC_16_Hold(1643,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1643,"1");
            }
            write_into_PLC_16_Hold(1681,Mid.value(7));

            write_into_PLC_32_Hold(1604,Mid.value(8));
            if(Mid.value(9) == "45")
            {
                write_into_PLC_16_Hold(1644,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1644,"1");
            }
            if(Mid.value(10) == "45")
            {
                write_into_PLC_16_Hold(1645,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1645,"1");
            }
            write_into_PLC_16_Hold(1682,Mid.value(11));

            write_into_PLC_32_Hold(1606,Mid.value(12));
            if(Mid.value(13) == "45")
            {
                write_into_PLC_16_Hold(1646,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1646,"1");
            }
            if(Mid.value(14) == "45")
            {
                write_into_PLC_16_Hold(1647,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1647,"1");
            }
            write_into_PLC_16_Hold(1683,Mid.value(15));

            write_into_PLC_32_Hold(1608,Mid.value(16));
            if(Mid.value(17) == "45")
            {
                write_into_PLC_16_Hold(1648,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1648,"1");
            }
            if(Mid.value(18) == "45")
            {
                write_into_PLC_16_Hold(1649,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1649,"1");
            }
            write_into_PLC_16_Hold(1684,Mid.value(19));

            write_into_PLC_32_Hold(1610,Mid.value(20));
            if(Mid.value(21) == "45")
            {
                write_into_PLC_16_Hold(1650,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1650,"1");
            }
            if(Mid.value(22) == "45")
            {
                write_into_PLC_16_Hold(1651,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1651,"1");
            }
            write_into_PLC_16_Hold(1685,Mid.value(23));

            write_into_PLC_32_Hold(1612,Mid.value(24));
            if(Mid.value(25) == "45")
            {
                write_into_PLC_16_Hold(1652,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1652,"1");
            }
            if(Mid.value(26) == "45")
            {
                write_into_PLC_16_Hold(1653,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1653,"1");
            }
            write_into_PLC_16_Hold(1686,Mid.value(27));

            write_into_PLC_32_Hold(1614,Mid.value(28));
            if(Mid.value(29) == "45")
            {
                write_into_PLC_16_Hold(1654,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1654,"1");
            }
            if(Mid.value(30) == "45")
            {
                write_into_PLC_16_Hold(1655,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1655,"1");
            }
            write_into_PLC_16_Hold(1687,Mid.value(31));

            write_into_PLC_32_Hold(1616,Mid.value(32));
            if(Mid.value(33) == "45")
            {
                write_into_PLC_16_Hold(1656,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1656,"1");
            }
            if(Mid.value(34) == "45")
            {
                write_into_PLC_16_Hold(1657,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1657,"1");
            }
            write_into_PLC_16_Hold(1688,Mid.value(35));

            write_into_PLC_32_Hold(1618,Mid.value(36));
            if(Mid.value(37) == "45")
            {
                write_into_PLC_16_Hold(1658,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1658,"1");
            }
            if(Mid.value(38) == "45")
            {
                write_into_PLC_16_Hold(1659,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1659,"1");
            }
            write_into_PLC_16_Hold(1689,Mid.value(39));

            write_into_PLC_32_Hold(1620,Mid.value(40));
            if(Mid.value(41) == "45")
            {
                write_into_PLC_16_Hold(1660,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1660,"1");
            }
            if(Mid.value(42) == "45")
            {
                write_into_PLC_16_Hold(1661,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1661,"1");
            }
            write_into_PLC_16_Hold(1690,Mid.value(43));

            write_into_PLC_32_Hold(1622,Mid.value(44));
            if(Mid.value(45) == "45")
            {
                write_into_PLC_16_Hold(1662,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1662,"1");
            }
            if(Mid.value(46) == "45")
            {
                write_into_PLC_16_Hold(1663,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1663,"1");
            }
            write_into_PLC_16_Hold(1691,Mid.value(47));

            write_into_PLC_32_Hold(1624,Mid.value(48));
            if(Mid.value(49) == "45")
            {
                write_into_PLC_16_Hold(1664,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1664,"1");
            }
            if(Mid.value(50) == "45")
            {
                write_into_PLC_16_Hold(1665,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1665,"1");
            }
            write_into_PLC_16_Hold(1692,Mid.value(51));

            write_into_PLC_32_Hold(1626,Mid.value(52));
            if(Mid.value(53) == "45")
            {
                write_into_PLC_16_Hold(1666,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1666,"1");
            }
            if(Mid.value(54) == "45")
            {
                write_into_PLC_16_Hold(1667,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1667,"1");
            }
            write_into_PLC_16_Hold(1693,Mid.value(55));

            write_into_PLC_32_Hold(1628,Mid.value(56));
            if(Mid.value(57) == "45")
            {
                write_into_PLC_16_Hold(1668,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1668,"1");
            }
            if(Mid.value(58) == "45")
            {
                write_into_PLC_16_Hold(1669,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1669,"1");
            }
            write_into_PLC_16_Hold(1694,Mid.value(59));

            write_into_PLC_32_Hold(1630,Mid.value(60));
            if(Mid.value(61) == "45")
            {
                write_into_PLC_16_Hold(1670,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1670,"1");
            }
            if(Mid.value(62) == "45")
            {
                write_into_PLC_16_Hold(1671,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1671,"1");
            }
            write_into_PLC_16_Hold(1695,Mid.value(63));
            write_into_PLC_32_Hold(1630,Mid.value(60));
            if(Mid.value(61) == "45")
            {
                write_into_PLC_16_Hold(1670,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1670,"1");
            }
            if(Mid.value(62) == "45")
            {
                write_into_PLC_16_Hold(1671,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1671,"1");
            }
            write_into_PLC_16_Hold(1695,Mid.value(63));

            write_into_PLC_32_Hold(1632,Mid.value(64));
            if(Mid.value(65) == "45")
            {
                write_into_PLC_16_Hold(1672,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1672,"1");
            }
            if(Mid.value(66) == "45")
            {
                write_into_PLC_16_Hold(1673,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1673,"1");
            }
            write_into_PLC_16_Hold(1696,Mid.value(67));

            write_into_PLC_32_Hold(1634,Mid.value(68));
            if(Mid.value(69) == "45")
            {
                write_into_PLC_16_Hold(1674,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1674,"1");
            }
            if(Mid.value(70) == "45")
            {
                write_into_PLC_16_Hold(1675,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1675,"1");
            }
            write_into_PLC_16_Hold(1697,Mid.value(71));


            write_into_PLC_32_Hold(1636,"0");
            write_into_PLC_16_Hold(1676,"0");
            write_into_PLC_16_Hold(1677,"0");
            write_into_PLC_16_Hold(1698,"0");

            write_into_PLC_32_Hold(1638,"0");
            write_into_PLC_16_Hold(1678,"0");
            write_into_PLC_16_Hold(1679,"0");
            write_into_PLC_16_Hold(1699,"0");
            break;
        }
        case 19:
        {
            write_into_PLC_32_Hold(1600,Mid.value(0));
            if(Mid.value(1) == "45")
            {
                write_into_PLC_16_Hold(1640,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1640,"1");
            }
            if(Mid.value(2) == "45")
            {
                write_into_PLC_16_Hold(1641,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1641,"1");
            }
            write_into_PLC_16_Hold(1680,Mid.value(3));

            write_into_PLC_32_Hold(1602,Mid.value(4));
            if(Mid.value(5) == "45")
            {
                write_into_PLC_16_Hold(1642,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1642,"1");
            }
            if(Mid.value(6) == "45")
            {
                write_into_PLC_16_Hold(1643,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1643,"1");
            }
            write_into_PLC_16_Hold(1681,Mid.value(7));

            write_into_PLC_32_Hold(1604,Mid.value(8));
            if(Mid.value(9) == "45")
            {
                write_into_PLC_16_Hold(1644,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1644,"1");
            }
            if(Mid.value(10) == "45")
            {
                write_into_PLC_16_Hold(1645,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1645,"1");
            }
            write_into_PLC_16_Hold(1682,Mid.value(11));

            write_into_PLC_32_Hold(1606,Mid.value(12));
            if(Mid.value(13) == "45")
            {
                write_into_PLC_16_Hold(1646,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1646,"1");
            }
            if(Mid.value(14) == "45")
            {
                write_into_PLC_16_Hold(1647,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1647,"1");
            }
            write_into_PLC_16_Hold(1683,Mid.value(15));

            write_into_PLC_32_Hold(1608,Mid.value(16));
            if(Mid.value(17) == "45")
            {
                write_into_PLC_16_Hold(1648,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1648,"1");
            }
            if(Mid.value(18) == "45")
            {
                write_into_PLC_16_Hold(1649,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1649,"1");
            }
            write_into_PLC_16_Hold(1684,Mid.value(19));

            write_into_PLC_32_Hold(1610,Mid.value(20));
            if(Mid.value(21) == "45")
            {
                write_into_PLC_16_Hold(1650,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1650,"1");
            }
            if(Mid.value(22) == "45")
            {
                write_into_PLC_16_Hold(1651,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1651,"1");
            }
            write_into_PLC_16_Hold(1685,Mid.value(23));

            write_into_PLC_32_Hold(1612,Mid.value(24));
            if(Mid.value(25) == "45")
            {
                write_into_PLC_16_Hold(1652,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1652,"1");
            }
            if(Mid.value(26) == "45")
            {
                write_into_PLC_16_Hold(1653,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1653,"1");
            }
            write_into_PLC_16_Hold(1686,Mid.value(27));

            write_into_PLC_32_Hold(1614,Mid.value(28));
            if(Mid.value(29) == "45")
            {
                write_into_PLC_16_Hold(1654,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1654,"1");
            }
            if(Mid.value(30) == "45")
            {
                write_into_PLC_16_Hold(1655,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1655,"1");
            }
            write_into_PLC_16_Hold(1687,Mid.value(31));

            write_into_PLC_32_Hold(1616,Mid.value(32));
            if(Mid.value(33) == "45")
            {
                write_into_PLC_16_Hold(1656,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1656,"1");
            }
            if(Mid.value(34) == "45")
            {
                write_into_PLC_16_Hold(1657,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1657,"1");
            }
            write_into_PLC_16_Hold(1688,Mid.value(35));

            write_into_PLC_32_Hold(1618,Mid.value(36));
            if(Mid.value(37) == "45")
            {
                write_into_PLC_16_Hold(1658,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1658,"1");
            }
            if(Mid.value(38) == "45")
            {
                write_into_PLC_16_Hold(1659,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1659,"1");
            }
            write_into_PLC_16_Hold(1689,Mid.value(39));

            write_into_PLC_32_Hold(1620,Mid.value(40));
            if(Mid.value(41) == "45")
            {
                write_into_PLC_16_Hold(1660,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1660,"1");
            }
            if(Mid.value(42) == "45")
            {
                write_into_PLC_16_Hold(1661,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1661,"1");
            }
            write_into_PLC_16_Hold(1690,Mid.value(43));

            write_into_PLC_32_Hold(1622,Mid.value(44));
            if(Mid.value(45) == "45")
            {
                write_into_PLC_16_Hold(1662,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1662,"1");
            }
            if(Mid.value(46) == "45")
            {
                write_into_PLC_16_Hold(1663,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1663,"1");
            }
            write_into_PLC_16_Hold(1691,Mid.value(47));

            write_into_PLC_32_Hold(1624,Mid.value(48));
            if(Mid.value(49) == "45")
            {
                write_into_PLC_16_Hold(1664,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1664,"1");
            }
            if(Mid.value(50) == "45")
            {
                write_into_PLC_16_Hold(1665,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1665,"1");
            }
            write_into_PLC_16_Hold(1692,Mid.value(51));

            write_into_PLC_32_Hold(1626,Mid.value(52));
            if(Mid.value(53) == "45")
            {
                write_into_PLC_16_Hold(1666,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1666,"1");
            }
            if(Mid.value(54) == "45")
            {
                write_into_PLC_16_Hold(1667,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1667,"1");
            }
            write_into_PLC_16_Hold(1693,Mid.value(55));

            write_into_PLC_32_Hold(1628,Mid.value(56));
            if(Mid.value(57) == "45")
            {
                write_into_PLC_16_Hold(1668,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1668,"1");
            }
            if(Mid.value(58) == "45")
            {
                write_into_PLC_16_Hold(1669,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1669,"1");
            }
            write_into_PLC_16_Hold(1694,Mid.value(59));

            write_into_PLC_32_Hold(1630,Mid.value(60));
            if(Mid.value(61) == "45")
            {
                write_into_PLC_16_Hold(1670,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1670,"1");
            }
            if(Mid.value(62) == "45")
            {
                write_into_PLC_16_Hold(1671,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1671,"1");
            }
            write_into_PLC_16_Hold(1695,Mid.value(63));
            write_into_PLC_32_Hold(1630,Mid.value(60));
            if(Mid.value(61) == "45")
            {
                write_into_PLC_16_Hold(1670,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1670,"1");
            }
            if(Mid.value(62) == "45")
            {
                write_into_PLC_16_Hold(1671,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1671,"1");
            }
            write_into_PLC_16_Hold(1695,Mid.value(63));

            write_into_PLC_32_Hold(1632,Mid.value(64));
            if(Mid.value(65) == "45")
            {
                write_into_PLC_16_Hold(1672,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1672,"1");
            }
            if(Mid.value(66) == "45")
            {
                write_into_PLC_16_Hold(1673,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1673,"1");
            }
            write_into_PLC_16_Hold(1696,Mid.value(67));

            write_into_PLC_32_Hold(1634,Mid.value(68));
            if(Mid.value(69) == "45")
            {
                write_into_PLC_16_Hold(1674,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1674,"1");
            }
            if(Mid.value(70) == "45")
            {
                write_into_PLC_16_Hold(1675,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1675,"1");
            }
            write_into_PLC_16_Hold(1697,Mid.value(71));

            write_into_PLC_32_Hold(1636,Mid.value(72));
            if(Mid.value(73) == "45")
            {
                write_into_PLC_16_Hold(1676,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1676,"1");
            }
            if(Mid.value(74) == "45")
            {
                write_into_PLC_16_Hold(1677,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1677,"1");
            }
            write_into_PLC_16_Hold(1698,Mid.value(75));


            write_into_PLC_32_Hold(1638,"0");
            write_into_PLC_16_Hold(1678,"0");
            write_into_PLC_16_Hold(1679,"0");
            write_into_PLC_16_Hold(1699,"0");

            break;
        }
        case 20:
        {
            write_into_PLC_32_Hold(1600,Mid.value(0));
            if(Mid.value(1) == "45")
            {
                write_into_PLC_16_Hold(1640,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1640,"1");
            }
            if(Mid.value(2) == "45")
            {
                write_into_PLC_16_Hold(1641,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1641,"1");
            }
            write_into_PLC_16_Hold(1680,Mid.value(3));

            write_into_PLC_32_Hold(1602,Mid.value(4));
            if(Mid.value(5) == "45")
            {
                write_into_PLC_16_Hold(1642,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1642,"1");
            }
            if(Mid.value(6) == "45")
            {
                write_into_PLC_16_Hold(1643,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1643,"1");
            }
            write_into_PLC_16_Hold(1681,Mid.value(7));

            write_into_PLC_32_Hold(1604,Mid.value(8));
            if(Mid.value(9) == "45")
            {
                write_into_PLC_16_Hold(1644,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1644,"1");
            }
            if(Mid.value(10) == "45")
            {
                write_into_PLC_16_Hold(1645,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1645,"1");
            }
            write_into_PLC_16_Hold(1682,Mid.value(11));

            write_into_PLC_32_Hold(1606,Mid.value(12));
            if(Mid.value(13) == "45")
            {
                write_into_PLC_16_Hold(1646,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1646,"1");
            }
            if(Mid.value(14) == "45")
            {
                write_into_PLC_16_Hold(1647,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1647,"1");
            }
            write_into_PLC_16_Hold(1683,Mid.value(15));

            write_into_PLC_32_Hold(1608,Mid.value(16));
            if(Mid.value(17) == "45")
            {
                write_into_PLC_16_Hold(1648,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1648,"1");
            }
            if(Mid.value(18) == "45")
            {
                write_into_PLC_16_Hold(1649,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1649,"1");
            }
            write_into_PLC_16_Hold(1684,Mid.value(19));

            write_into_PLC_32_Hold(1610,Mid.value(20));
            if(Mid.value(21) == "45")
            {
                write_into_PLC_16_Hold(1650,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1650,"1");
            }
            if(Mid.value(22) == "45")
            {
                write_into_PLC_16_Hold(1651,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1651,"1");
            }
            write_into_PLC_16_Hold(1685,Mid.value(23));

            write_into_PLC_32_Hold(1612,Mid.value(24));
            if(Mid.value(25) == "45")
            {
                write_into_PLC_16_Hold(1652,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1652,"1");
            }
            if(Mid.value(26) == "45")
            {
                write_into_PLC_16_Hold(1653,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1653,"1");
            }
            write_into_PLC_16_Hold(1686,Mid.value(27));

            write_into_PLC_32_Hold(1614,Mid.value(28));
            if(Mid.value(29) == "45")
            {
                write_into_PLC_16_Hold(1654,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1654,"1");
            }
            if(Mid.value(30) == "45")
            {
                write_into_PLC_16_Hold(1655,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1655,"1");
            }
            write_into_PLC_16_Hold(1687,Mid.value(31));

            write_into_PLC_32_Hold(1616,Mid.value(32));
            if(Mid.value(33) == "45")
            {
                write_into_PLC_16_Hold(1656,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1656,"1");
            }
            if(Mid.value(34) == "45")
            {
                write_into_PLC_16_Hold(1657,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1657,"1");
            }
            write_into_PLC_16_Hold(1688,Mid.value(35));

            write_into_PLC_32_Hold(1618,Mid.value(36));
            if(Mid.value(37) == "45")
            {
                write_into_PLC_16_Hold(1658,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1658,"1");
            }
            if(Mid.value(38) == "45")
            {
                write_into_PLC_16_Hold(1659,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1659,"1");
            }
            write_into_PLC_16_Hold(1689,Mid.value(39));

            write_into_PLC_32_Hold(1620,Mid.value(40));
            if(Mid.value(41) == "45")
            {
                write_into_PLC_16_Hold(1660,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1660,"1");
            }
            if(Mid.value(42) == "45")
            {
                write_into_PLC_16_Hold(1661,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1661,"1");
            }
            write_into_PLC_16_Hold(1690,Mid.value(43));

            write_into_PLC_32_Hold(1622,Mid.value(44));
            if(Mid.value(45) == "45")
            {
                write_into_PLC_16_Hold(1662,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1662,"1");
            }
            if(Mid.value(46) == "45")
            {
                write_into_PLC_16_Hold(1663,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1663,"1");
            }
            write_into_PLC_16_Hold(1691,Mid.value(47));

            write_into_PLC_32_Hold(1624,Mid.value(48));
            if(Mid.value(49) == "45")
            {
                write_into_PLC_16_Hold(1664,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1664,"1");
            }
            if(Mid.value(50) == "45")
            {
                write_into_PLC_16_Hold(1665,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1665,"1");
            }
            write_into_PLC_16_Hold(1692,Mid.value(51));

            write_into_PLC_32_Hold(1626,Mid.value(52));
            if(Mid.value(53) == "45")
            {
                write_into_PLC_16_Hold(1666,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1666,"1");
            }
            if(Mid.value(54) == "45")
            {
                write_into_PLC_16_Hold(1667,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1667,"1");
            }
            write_into_PLC_16_Hold(1693,Mid.value(55));

            write_into_PLC_32_Hold(1628,Mid.value(56));
            if(Mid.value(57) == "45")
            {
                write_into_PLC_16_Hold(1668,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1668,"1");
            }
            if(Mid.value(58) == "45")
            {
                write_into_PLC_16_Hold(1669,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1669,"1");
            }
            write_into_PLC_16_Hold(1694,Mid.value(59));

            write_into_PLC_32_Hold(1630,Mid.value(60));
            if(Mid.value(61) == "45")
            {
                write_into_PLC_16_Hold(1670,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1670,"1");
            }
            if(Mid.value(62) == "45")
            {
                write_into_PLC_16_Hold(1671,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1671,"1");
            }
            write_into_PLC_16_Hold(1695,Mid.value(63));
            write_into_PLC_32_Hold(1630,Mid.value(60));
            if(Mid.value(61) == "45")
            {
                write_into_PLC_16_Hold(1670,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1670,"1");
            }
            if(Mid.value(62) == "45")
            {
                write_into_PLC_16_Hold(1671,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1671,"1");
            }
            write_into_PLC_16_Hold(1695,Mid.value(63));

            write_into_PLC_32_Hold(1632,Mid.value(64));
            if(Mid.value(65) == "45")
            {
                write_into_PLC_16_Hold(1672,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1672,"1");
            }
            if(Mid.value(66) == "45")
            {
                write_into_PLC_16_Hold(1673,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1673,"1");
            }
            write_into_PLC_16_Hold(1696,Mid.value(67));

            write_into_PLC_32_Hold(1634,Mid.value(68));
            if(Mid.value(69) == "45")
            {
                write_into_PLC_16_Hold(1674,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1674,"1");
            }
            if(Mid.value(70) == "45")
            {
                write_into_PLC_16_Hold(1675,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1675,"1");
            }
            write_into_PLC_16_Hold(1697,Mid.value(71));

            write_into_PLC_32_Hold(1636,Mid.value(72));
            if(Mid.value(73) == "45")
            {
                write_into_PLC_16_Hold(1676,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1676,"1");
            }
            if(Mid.value(74) == "45")
            {
                write_into_PLC_16_Hold(1677,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1677,"1");
            }
            write_into_PLC_16_Hold(1698,Mid.value(75));

            write_into_PLC_32_Hold(1638,Mid.value(76));
            if(Mid.value(77) == "45")
            {
                write_into_PLC_16_Hold(1678,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1678,"1");
            }
            if(Mid.value(78) == "45")
            {
                write_into_PLC_16_Hold(1679,"0");
            }
            else
            {
                write_into_PLC_16_Hold(1679,"1");
            }
            write_into_PLC_16_Hold(1699,Mid.value(79));
            break;
        }
        default:
        {
            break;
        }
        }

        break;
    }
    default :{
        qDebug()<<"无效离线二维码";
        break;
    }

    }


    write_into_PLC_Coils(428,false);

    qDebug()<<"1111111111111            扫码枪触发 结束          11111111111111";

    read_Material_List_QR_Code_List_Process_Hold();

}



void ModbusControl::setModbusConnectParameter(QString serialPort,
                                              QString baudRate,
                                              QString dataBit,
                                              QString parity,
                                              QString stopBit)
{
    QSerialPort::BaudRate set_BaudRate;
    QSerialPort::DataBits set_DataBit;
    QSerialPort::Parity   set_ParityBit;
    QSerialPort::StopBits set_StopBit;

    // 设置波特率
    if("115200" == baudRate)
    {
        set_BaudRate = QSerialPort::Baud115200;
    }
    else if("57600" == baudRate)
    {
        set_BaudRate = QSerialPort::Baud57600;
    }
    else if("38400" == baudRate)
    {
        set_BaudRate = QSerialPort::Baud38400;
    }
    else if("19200" == baudRate)
    {
        set_BaudRate = QSerialPort::Baud19200;
    }
    else if("9600" ==  baudRate)
    {
        set_BaudRate = QSerialPort::Baud9600;
    }
    else if("4800" == baudRate)
    {
        set_BaudRate = QSerialPort::Baud4800;
    }
    else if("2400" == baudRate)
    {
        set_BaudRate = QSerialPort::Baud2400;
    }
    else
    {
        set_BaudRate = QSerialPort::Baud1200;
    }

    // 设置 - 数据位
    if("8" == dataBit)
    {
        set_DataBit = QSerialPort::Data8;
    }
    else if("7" == dataBit)
    {
        set_DataBit = QSerialPort::Data7;
    }
    else if("6" == dataBit)
    {
        set_DataBit = QSerialPort::Data6;
    }
    else
    {
        set_DataBit = QSerialPort::Data5;
    }

    // 设置 - 校验位
    if("None" == parity || "N" == parity){
        set_ParityBit = QSerialPort::NoParity;
    }else if("Even" == parity || "E" == parity){
        set_ParityBit = QSerialPort::EvenParity;
    }else if("Odd" == parity || "O" == parity){
        set_ParityBit = QSerialPort::OddParity;
    }else if("Mark" == parity || "M" == parity){
        set_ParityBit = QSerialPort::MarkParity;
    }else {
        set_ParityBit = QSerialPort::SpaceParity;
    }

    // 设置 - 停止位
    if("1" == stopBit){
        set_StopBit = QSerialPort::OneStop;
    }else if("1.5" == stopBit){
        set_StopBit = QSerialPort::OneAndHalfStop;
    }else{
        set_StopBit = QSerialPort::TwoStop;
    }

    m_Modbus->setConnectionParameter(QModbusDevice::SerialPortNameParameter,serialPort);
    m_Modbus->setConnectionParameter(QModbusDevice::SerialBaudRateParameter,set_BaudRate);
    m_Modbus->setConnectionParameter(QModbusDevice::SerialDataBitsParameter,set_DataBit);
    m_Modbus->setConnectionParameter(QModbusDevice::SerialParityParameter,set_ParityBit);
    m_Modbus->setConnectionParameter(QModbusDevice::SerialStopBitsParameter,set_StopBit);

}


void ModbusControl::connectToDevice()
{
    if(m_Modbus->connectDevice())
    {
        qDebug()<<"PLC连接成功!!!!";
        write_into_PLC_Coils(600,false);
    }
    else
    {
        qDebug()<<"连接失败!!!";
    }

}

void ModbusControl::write_into_PLC_32_Hold(int address, QString newValue)
{
    uint16_t write_regs[2] = {0};

    floatResolution(newValue,&write_regs[1],&write_regs[0]);

    if (m_Modbus->state() != QModbusDevice::ConnectedState) {
        qDebug()<<"error : disConnectedState";
        return;
    }
    //写入到 holdaddress 地址    写两个寄存器
    QModbusDataUnit writeUnit(QModbusDataUnit::HoldingRegisters, address, 2);
    writeUnit.setValue(0,write_regs[0]);
    writeUnit.setValue(1,write_regs[1]);

    // 发送写请求  // 1为从站地址
    if (QModbusReply* reply = m_Modbus->sendWriteRequest(writeUnit, 1))
    {
        if (!reply->isFinished())
        {
            QObject::connect(reply, &QModbusReply::finished, this,[this ,reply, address, newValue]()
            {
                if (reply->error() != QModbusDevice::NoError)
                {
                    qDebug() << "写入 保持寄存器32 失败:" <<"  地址 : "<<address<<"  写入值: "<<newValue<<"  "<< reply->error();
                } else
                {
                    qDebug() << "写入 保持寄存器32 成功"<<"  地址 : "<<address<<"  写入值: "<<newValue;
                    emit write_Hold_Registers_32_Over_Signal(address);
                }
                reply->deleteLater();
            });
        } else {
            reply->deleteLater();
        }
    } else {
        qDebug() << "发送 写入保持寄存器32 请求失败" <<"  地址 : "<<address<<"  写入值: "<<newValue;
    }
}

void ModbusControl::write_into_PLC_16_Hold(int address, QString newValue)
{
    if (m_Modbus->state() != QModbusDevice::ConnectedState) {
        qDebug()<<"error : disConnectedState";
        return;
    }
    quint16 value = newValue.toInt();

    //写入到 holdaddress 地址
    QModbusDataUnit writeUnit(QModbusDataUnit::HoldingRegisters, address, 1);

    writeUnit.setValue(0,value);

    // 发送写请求  // 1为从站地址
    if (QModbusReply* reply = m_Modbus->sendWriteRequest(writeUnit, 1))
    {
        if (!reply->isFinished())
        {
            QObject::connect(reply, &QModbusReply::finished, this,[this ,reply, address, newValue]()
            {
                if (reply->error() != QModbusDevice::NoError)
                {
                    qDebug() << "写入 保持寄存器16 失败:" <<"  地址 : "<<address<<"  写入值: "<<newValue<<"  "<< reply->error();
                } else
                {
                    qDebug() << "写入 保持寄存器16 成功"<<"  地址 : "<<address<<"  写入值: "<<newValue;
                    emit write_Hold_Registers_16_Over_Signal(address);
                }
                reply->deleteLater();
            });
        } else {
            reply->deleteLater();
        }
    } else {
        qDebug() << "发送 写入保持寄存器16 请求失败" <<"  地址 : "<<address<<"  写入值: "<<newValue;
    }
}

void ModbusControl::write_into_PLC_Coils(int address, bool newValue)
{
    if (m_Modbus->state() != QModbusDevice::ConnectedState) {
        qDebug()<<"error : disConnectedState";
        return;
    }
    quint16 value = newValue;

    //写入到 holdaddress 地址
    QModbusDataUnit writeUnit(QModbusDataUnit::Coils, address, 1);

    writeUnit.setValue(0,value);

    // 发送写请求  // 1为从站地址
    if (QModbusReply* reply = m_Modbus->sendWriteRequest(writeUnit, 1))
    {
        if (!reply->isFinished())
        {
            QObject::connect(reply, &QModbusReply::finished, this,[this ,reply, address, newValue]()
            {
                if (reply->error() != QModbusDevice::NoError)
                {
                    qDebug() << "写入 线圈 失败:" <<"  地址 : "<<address<<"  写入值: "<<newValue<<"  "<< reply->error();
                } else
                {
                    qDebug() << "写入 线圈 成功"<<"  地址 : "<<address<<"  写入值: "<<newValue;
                }
                reply->deleteLater();
            });
        } else {
            reply->deleteLater();
        }
    } else {
        qDebug() << "发送 线圈 请求失败" <<"  地址 : "<<address<<"  写入值: "<<newValue;
    }
}

void ModbusControl::read_PLC_Vertion_Hold()
{

    QModbusDataUnit readUnit1(QModbusDataUnit::HoldingRegisters,0,120);

    if(auto* reply = (m_Modbus->sendReadRequest(readUnit1,1))){
        if(!reply->isFinished())
        {
            connect(reply,&QModbusReply::finished,this,[reply, this]()
            {
                if(reply->error() == QModbusDevice::NoError)
                {
                    const QModbusDataUnit resultUnit = reply->result();

                    // 编码器位置
                    setCore_Number(QString("%1").arg(combinationToInteger(resultUnit.value(3),resultUnit.value(2))));
                    // 版本号
                    setPLC_Version_Code(QString("%1").arg(combinationToFloat(resultUnit.value(11),resultUnit.value(10))));

                    // 待加工料长 D64
                    setPrinter_Material_Length(QString("%1").arg(combinationToFloat(resultUnit.value(65),resultUnit.value(64)),0,'f',2));

                    // 当前本地料单序号 D76
                    setCurrent_Local_Order(QString("%1").arg(resultUnit.value(76)));

                    // 当前料单序号 D77
                    setCurrent_List_Order(QString("%1").arg(resultUnit.value(77)));

                    // 料高检测值 D106
                    setMaterialHeightObserveValue(QString("%1").arg(combinationToInteger(resultUnit.value(107),resultUnit.value(106))));

                    setPLC_ConnectState(true);
                }
                else
                {
                    setPLC_ConnectState(false);
                }

                reply->deleteLater();
            });
        }
    }
}

void ModbusControl::read_Mechine_Current_Location()
{
    QModbusDataUnit readUnit1(QModbusDataUnit::HoldingRegisters,150,120);

    if(auto* reply = (m_Modbus->sendReadRequest(readUnit1,1))){
        if(!reply->isFinished())
        {
            connect(reply,&QModbusReply::finished,this,[reply, this]()
            {
                if(reply->error() == QModbusDevice::NoError)
                {
                    const QModbusDataUnit resultUnit = reply->result();

                    // 当前位置 D196
                    setCurrent_Location(QString("%1").arg(combinationToFloat(resultUnit.value(47),resultUnit.value(46)),0,'f',2));

                    // 材料高度 D214
                    setPrinter_Material_Height(QString("%1").arg(combinationToFloat(resultUnit.value(65),resultUnit.value(64)),0,'f',2));

                    // 当前段数 D231
                    setCurrentCutSegments_NormalProcess(QString("%1").arg(resultUnit.value(81)));

                }
                else
                {
                    qDebug()<<"读取 机器当前位置失败 "<<reply->errorString().toStdString();
                }

                reply->deleteLater();
            });
        }
    }
}

void ModbusControl::read_Current_Corner_Segments_Worked_Corner_Segments()
{
    QModbusDataUnit readUnit(QModbusDataUnit::HoldingRegisters,1270,120);

    if(auto* reply = (m_Modbus->sendReadRequest(readUnit,1))){
        if(!reply->isFinished())
        {
            connect(reply,&QModbusReply::finished,this,[reply, this]()
            {
                if(reply->error() == QModbusDevice::NoError)
                {
                    const QModbusDataUnit resultUnit = reply->result();

                    setCurrent_Corner_Segments(QString("%1").arg(resultUnit.value(0)));
                    setWorked_Corner_Segments(QString("%1").arg(resultUnit.value(1)));

                }
                else
                {
                    qDebug()<<"读取 机器当前位置失败 "<<reply->errorString().toStdString();
                }

                reply->deleteLater();
            });
        }
    }
}

void ModbusControl::read_IO_Monitor_DiscreteInputs()
{
    QModbusDataUnit readUnit(QModbusDataUnit::DiscreteInputs,13056,100);

    if(auto* reply = (m_Modbus->sendReadRequest(readUnit,1))){
        if(!reply->isFinished())
        {
            connect(reply,&QModbusReply::finished,this,[reply, this]()
            {
                if(reply->error() == QModbusDevice::NoError)
                {
                    const QModbusDataUnit resultUnit = reply->result();

                    // qDebug()<<"Y0 : "<<resultUnit.value(0);
                    // qDebug()<<"Y1 : "<<resultUnit.value(1);
                    // qDebug()<<"Y2 : "<<resultUnit.value(2);
                    // qDebug()<<"Y3 : "<<resultUnit.value(3);
                    // qDebug()<<"Y4 : "<<resultUnit.value(4);
                    // qDebug()<<"Y5 : "<<resultUnit.value(5);
                    // qDebug()<<"Y6 : "<<resultUnit.value(6);
                    // qDebug()<<"Y7 : "<<resultUnit.value(7);
                    // qDebug()<<"Y10 : "<<resultUnit.value(8);
                    // qDebug()<<"Y11 : "<<resultUnit.value(9);
                    // qDebug()<<"Y12 : "<<resultUnit.value(10);
                    // qDebug()<<"Y13 : "<<resultUnit.value(11);
                    // qDebug()<<"Y14 : "<<resultUnit.value(12);
                    // qDebug()<<"Y15 : "<<resultUnit.value(13);
                    // qDebug()<<"Y16 : "<<resultUnit.value(14);
                    // qDebug()<<"Y17 : "<<resultUnit.value(15);
                    // qDebug()<<"Y20 : "<<resultUnit.value(16);
                    // qDebug()<<"Y21 : "<<resultUnit.value(17);
                    // qDebug()<<"Y22 : "<<resultUnit.value(18);
                    // qDebug()<<"Y23 : "<<resultUnit.value(19);
                    // qDebug()<<"Y24 : "<<resultUnit.value(20);
                    // qDebug()<<"Y25 : "<<resultUnit.value(21);
                    // qDebug()<<"Y26 : "<<resultUnit.value(22);
                    // qDebug()<<"Y27 : "<<resultUnit.value(23);

                    setY0(resultUnit.value(0));
                    setY1(resultUnit.value(1));
                    setY2(resultUnit.value(2));
                    setY3(resultUnit.value(3));
                    setY4(resultUnit.value(4));
                    setY5(resultUnit.value(5));
                    setY6(resultUnit.value(6));
                    setY7(resultUnit.value(7));
                    setY10(resultUnit.value(8));
                    setY11(resultUnit.value(9));
                    setY12(resultUnit.value(10));
                    setY13(resultUnit.value(11));
                    setY14(resultUnit.value(12));
                    setY15(resultUnit.value(13));
                    setY16(resultUnit.value(14));
                    setY17(resultUnit.value(15));
                    setY20(resultUnit.value(16));
                    setY21(resultUnit.value(17));
                    setY22(resultUnit.value(18));
                    setY23(resultUnit.value(19));
                    setY24(resultUnit.value(20));
                    setY25(resultUnit.value(21));
                    // setY26(resultUnit.value(22));
                    // setY27(resultUnit.value(23));

                }
                else
                {
                    qDebug()<<"读取 机器当前位置失败 "<<reply->errorString().toStdString();
                }

                reply->deleteLater();
            });
        }
    }

    QModbusDataUnit readUnit2(QModbusDataUnit::DiscreteInputs,13312,100);

    if(auto* reply = (m_Modbus->sendReadRequest(readUnit2,1))){
        if(!reply->isFinished())
        {
            connect(reply,&QModbusReply::finished,this,[reply, this]()
            {
                if(reply->error() == QModbusDevice::NoError)
                {
                    const QModbusDataUnit resultUnit = reply->result();

                    // qDebug()<<"X0 : "<<resultUnit.value(0);
                    // qDebug()<<"X1 : "<<resultUnit.value(1);
                    // qDebug()<<"X2 : "<<resultUnit.value(2);
                    // qDebug()<<"X3 : "<<resultUnit.value(3);
                    // // qDebug()<<"X4 : "<<resultUnit.value(4);
                    // qDebug()<<"X5 : "<<resultUnit.value(5);
                    // qDebug()<<"X6 : "<<resultUnit.value(6);
                    // qDebug()<<"X7 : "<<resultUnit.value(7);
                    // qDebug()<<"X10 : "<<resultUnit.value(8);
                    // qDebug()<<"X11 : "<<resultUnit.value(9);
                    // qDebug()<<"X12 : "<<resultUnit.value(10);
                    // qDebug()<<"X13 : "<<resultUnit.value(11);
                    // qDebug()<<"X14 : "<<resultUnit.value(12);
                    // qDebug()<<"X15 : "<<resultUnit.value(13);
                    // qDebug()<<"X16 : "<<resultUnit.value(14);
                    // qDebug()<<"X17 : "<<resultUnit.value(15);
                    // qDebug()<<"X20 : "<<resultUnit.value(16);
                    // qDebug()<<"X21 : "<<resultUnit.value(17);
                    // qDebug()<<"X22 : "<<resultUnit.value(18);

                    setX0(resultUnit.value(0));
                    setX1(resultUnit.value(1));
                    setX2(resultUnit.value(2));
                    setX3(resultUnit.value(3));
                    // setX4(resultUnit.value(4));
                    setX5(resultUnit.value(5));
                    setX6(resultUnit.value(6));
                    setX7(resultUnit.value(7));
                    setX10(resultUnit.value(8));
                    setX11(resultUnit.value(9));
                    setX12(resultUnit.value(10));
                    setX13(resultUnit.value(11));
                    setX14(resultUnit.value(12));
                    setX15(resultUnit.value(13));
                    setX16(resultUnit.value(14));
                    setX17(resultUnit.value(15));
                    setX20(resultUnit.value(16));
                    setX21(resultUnit.value(17));
                    setX22(resultUnit.value(18));

                }
                else
                {
                    qDebug()<<"读取 机器当前位置失败 "<<reply->errorString().toStdString();
                }

                reply->deleteLater();
            });
        }
    }


}

void ModbusControl::read_Coils()
{
    QModbusDataUnit readUnit(QModbusDataUnit::Coils,0,1000);

    if(auto* reply = (m_Modbus->sendReadRequest(readUnit,1))){
        if(!reply->isFinished())
        {
            connect(reply,&QModbusReply::finished,this,[reply, this]()
            {
                if(reply->error() == QModbusDevice::NoError)
                {
                    const QModbusDataUnit resultUnit = reply->result();

                    setM_42(resultUnit.value(42));
                    setM_43(resultUnit.value(43));
                    setM_47(resultUnit.value(47));
                    setM_52(resultUnit.value(52));
                    setM_56(resultUnit.value(56));
                    setM_57(resultUnit.value(57));
                    setM_58(resultUnit.value(58));
                    setM_59(resultUnit.value(59));
                    setM_64(resultUnit.value(64));
                    setM_68(resultUnit.value(68));
                    setM_69(resultUnit.value(69));
                    setM_73(resultUnit.value(73));
                    setM_76(resultUnit.value(76));
                    setM_77(resultUnit.value(77));
                    setM_80(resultUnit.value(80));
                    setM_134(resultUnit.value(134));
                    setM_137(resultUnit.value(137));
                    setM_143(resultUnit.value(143));
                    setM_149(resultUnit.value(149));
                    setM_152(resultUnit.value(152));
                    setM_153(resultUnit.value(153));
                    setM_159(resultUnit.value(159));
                    setM_164(resultUnit.value(164));
                    setM_170(resultUnit.value(170));
                    setM_196(resultUnit.value(196));
                    setM_197(resultUnit.value(197));
                    setM_250(resultUnit.value(250));
                    setM_251(resultUnit.value(251));
                    setM_252(resultUnit.value(252));

                    setM_239(resultUnit.value(239));
                    setM_240(resultUnit.value(240));
                    setM_241(resultUnit.value(241));
                    setM_390(resultUnit.value(390));
                    setM_391(resultUnit.value(391));

                    setM_6(resultUnit.value(6));
                    setM_7(resultUnit.value(7));
                    setM_9(resultUnit.value(9));
                    setM_96(resultUnit.value(96));
                    setM_97(resultUnit.value(97));
                    setM_98(resultUnit.value(98));
                    setM_103(resultUnit.value(103));

                    setM_2(resultUnit.value(2));
                    setM_3(resultUnit.value(3));
                    setM_31(resultUnit.value(31));
                    setM_36(resultUnit.value(36));

                    setM_243(resultUnit.value(243));
                    setM_244(resultUnit.value(244));
                    setM_245(resultUnit.value(245));
                    setM_515(resultUnit.value(515));
                    setM_516(resultUnit.value(516));
                    setM_517(resultUnit.value(517));
                    setM_512(resultUnit.value(512));
                    setM_514(resultUnit.value(514));
                    setM_499(resultUnit.value(499));

                    setM_401(resultUnit.value(401));
                    setM_402(resultUnit.value(402));
                    setM_403(resultUnit.value(403));
                    setM_404(resultUnit.value(404));
                    setM_405(resultUnit.value(405));
                    setM_406(resultUnit.value(406));
                    setM_407(resultUnit.value(407));
                    setM_408(resultUnit.value(408));
                    setM_409(resultUnit.value(409));
                    setM_410(resultUnit.value(410));
                    setM_411(resultUnit.value(411));
                    setM_412(resultUnit.value(412));
                    setM_413(resultUnit.value(413));
                    setM_414(resultUnit.value(414));
                    setM_415(resultUnit.value(415));
                    setM_416(resultUnit.value(416));
                    setM_417(resultUnit.value(417));
                    setM_418(resultUnit.value(418));
                    setM_419(resultUnit.value(419));
                    setM_420(resultUnit.value(420));
                    setM_421(resultUnit.value(421));

                    setM_528(resultUnit.value(528));
                    setM_510(resultUnit.value(510));
                    setM_509(resultUnit.value(509));
                    setM_400(resultUnit.value(400));
                    setM_398(resultUnit.value(398));
                    setM_397(resultUnit.value(397));
                    setM_396(resultUnit.value(396));
                    setM_394(resultUnit.value(394));
                    setM_500(resultUnit.value(500));
                    setM_501(resultUnit.value(501));
                    setM_392(resultUnit.value(392));
                    setM_393(resultUnit.value(393));
                    setM_502(resultUnit.value(502));
                    setM_503(resultUnit.value(503));
                    setM_529(resultUnit.value(529));
                    setM_530(resultUnit.value(530));
                    setM_505(resultUnit.value(505));
                    setM_506(resultUnit.value(506));
                    setM_507(resultUnit.value(507));
                    setM_508(resultUnit.value(508));
                    setM_511(resultUnit.value(511));

                    setM_135(resultUnit.value(135));

                    setM_61(resultUnit.value(61));

                    if(M_511())
                    {
                        if(M_135())
                        {
                            // qDebug()<<"触发自动打印";
                            if(M_394())
                            {
                                // if(M_390())
                                // {
                                //     qDebug()<<"打印 - 左角度: 90";
                                // }
                                // else
                                // {
                                //     qDebug()<<"打印 - 左角度: 45";
                                // }

                                // if(M_391())
                                // {
                                //     qDebug()<<"打印 - 右角度: 90";
                                // }
                                // else
                                // {
                                //     qDebug()<<"打印 - 右角度: 45";
                                // }

                                // qDebug()<<"打印 - 材料长度 : "<<Printer_Material_Length();

                                emit send_Auto_Printer_Message_Signal(M_390(),M_391(),"NULL",Printer_Material_Length());
                            }
                            else
                            {
                                // if(M_390())
                                // {
                                //     qDebug()<<"打印 - 左角度: 90";
                                // }
                                // else
                                // {
                                //     qDebug()<<"打印 - 左角度: 45";
                                // }

                                // if(M_391())
                                // {
                                //     qDebug()<<"打印 - 右角度: 90";
                                // }
                                // else
                                // {
                                //     qDebug()<<"打印 - 右角度: 45";
                                // }

                                // qDebug()<<"打印 - 材料高度 : "<<Printer_Material_Height();
                                // qDebug()<<"打印 - 材料长度 : "<<Printer_Material_Length();

                                emit send_Auto_Printer_Message_Signal(M_390(),M_391(),Printer_Material_Height(),Printer_Material_Length());
                            }


                            write_into_PLC_Coils(135,false);
                        }
                    }


                    setLog_Flag(resultUnit.value(600));

                }
                else
                {
                    qDebug()<<"读取 线圈失败 "<<reply->errorString().toStdString();
                }

                reply->deleteLater();
            });
        }
    }
}

void ModbusControl::read_QR_Code_Process_Lists_Worked_Count()
{
    QModbusDataUnit readUnit(QModbusDataUnit::HoldingRegisters,1700,120);

    if(auto* reply = (m_Modbus->sendReadRequest(readUnit,1))){
        if(!reply->isFinished())
        {
            connect(reply,&QModbusReply::finished,this,[reply, this]()
            {
                if(reply->error() == QModbusDevice::NoError)
                {
                    const QModbusDataUnit resultUnit = reply->result();

                    setQR_List_WorkedCount_1(QString("%1").arg(resultUnit.value(0)));
                    setQR_List_WorkedCount_2(QString("%1").arg(resultUnit.value(1)));
                    setQR_List_WorkedCount_3(QString("%1").arg(resultUnit.value(2)));
                    setQR_List_WorkedCount_4(QString("%1").arg(resultUnit.value(3)));
                    setQR_List_WorkedCount_5(QString("%1").arg(resultUnit.value(4)));
                    setQR_List_WorkedCount_6(QString("%1").arg(resultUnit.value(5)));
                    setQR_List_WorkedCount_7(QString("%1").arg(resultUnit.value(6)));
                    setQR_List_WorkedCount_8(QString("%1").arg(resultUnit.value(7)));
                    setQR_List_WorkedCount_9(QString("%1").arg(resultUnit.value(8)));
                    setQR_List_WorkedCount_10(QString("%1").arg(resultUnit.value(9)));
                    setQR_List_WorkedCount_11(QString("%1").arg(resultUnit.value(10)));
                    setQR_List_WorkedCount_12(QString("%1").arg(resultUnit.value(11)));
                    setQR_List_WorkedCount_13(QString("%1").arg(resultUnit.value(12)));
                    setQR_List_WorkedCount_14(QString("%1").arg(resultUnit.value(13)));
                    setQR_List_WorkedCount_15(QString("%1").arg(resultUnit.value(14)));
                    setQR_List_WorkedCount_16(QString("%1").arg(resultUnit.value(15)));
                    setQR_List_WorkedCount_17(QString("%1").arg(resultUnit.value(16)));
                    setQR_List_WorkedCount_18(QString("%1").arg(resultUnit.value(17)));
                    setQR_List_WorkedCount_19(QString("%1").arg(resultUnit.value(18)));
                    setQR_List_WorkedCount_20(QString("%1").arg(resultUnit.value(19)));

                }
                else
                {
                    qDebug()<<"读取 二维码料单 - 已加工数量 "<<reply->errorString().toStdString();
                }

                reply->deleteLater();
            });
        }
    }
}

void ModbusControl::read_Local_Material_List_Worked_Count()
{
    QModbusDataUnit readUnit(QModbusDataUnit::HoldingRegisters,1500,120);

    if(auto* reply = (m_Modbus->sendReadRequest(readUnit,1))){
        if(!reply->isFinished())
        {
            connect(reply,&QModbusReply::finished,this,[reply, this]()
            {
                if(reply->error() == QModbusDevice::NoError)
                {
                    const QModbusDataUnit resultUnit = reply->result();

                    setMaterial_Worked_Count_1(QString("%1").arg(resultUnit.value(0)));
                    setMaterial_Worked_Count_2(QString("%1").arg(resultUnit.value(1)));
                    setMaterial_Worked_Count_3(QString("%1").arg(resultUnit.value(2)));
                    setMaterial_Worked_Count_4(QString("%1").arg(resultUnit.value(3)));
                    setMaterial_Worked_Count_5(QString("%1").arg(resultUnit.value(4)));
                    setMaterial_Worked_Count_6(QString("%1").arg(resultUnit.value(5)));
                    setMaterial_Worked_Count_7(QString("%1").arg(resultUnit.value(6)));
                    setMaterial_Worked_Count_8(QString("%1").arg(resultUnit.value(7)));
                    setMaterial_Worked_Count_9(QString("%1").arg(resultUnit.value(8)));
                    setMaterial_Worked_Count_10(QString("%1").arg(resultUnit.value(9)));
                    setMaterial_Worked_Count_11(QString("%1").arg(resultUnit.value(10)));
                    setMaterial_Worked_Count_12(QString("%1").arg(resultUnit.value(11)));
                    setMaterial_Worked_Count_13(QString("%1").arg(resultUnit.value(12)));
                    setMaterial_Worked_Count_14(QString("%1").arg(resultUnit.value(13)));
                    setMaterial_Worked_Count_15(QString("%1").arg(resultUnit.value(14)));
                    setMaterial_Worked_Count_16(QString("%1").arg(resultUnit.value(15)));
                    setMaterial_Worked_Count_17(QString("%1").arg(resultUnit.value(16)));
                    setMaterial_Worked_Count_18(QString("%1").arg(resultUnit.value(17)));
                    setMaterial_Worked_Count_19(QString("%1").arg(resultUnit.value(18)));
                    setMaterial_Worked_Count_20(QString("%1").arg(resultUnit.value(19)));

                }
                else
                {
                    qDebug()<<"读取 本地料单 - 已加工数量 "<<reply->errorString().toStdString();
                }

                reply->deleteLater();
            });
        }
    }
}

void ModbusControl::read_Normal_Process_Hold()
{
    read_Normal_Process_Hold_1();
}

void ModbusControl::read_Normal_Process_Hold_1()
{

    QModbusDataUnit readUnit(QModbusDataUnit::HoldingRegisters,200,120);

    if(auto* reply = (m_Modbus->sendReadRequest(readUnit,1))){
        if(!reply->isFinished())
        {
            connect(reply,&QModbusReply::finished,this,[reply, this]()
            {
                if(reply->error() == QModbusDevice::NoError)
                {
                    const QModbusDataUnit resultUnit = reply->result();

                    // 手动料长 D210
                    setOriginValue(QString("%1").arg(combinationToFloat(resultUnit.value(11),resultUnit.value(10)),0,'f',2));
                    // 手动料长 D212
                    setMaterialLength_NormalProcess(QString("%1").arg(combinationToFloat(resultUnit.value(13),resultUnit.value(12)),0,'f',2));
                    // 手动料高 D214
                    setMaterialHeight_NormalProcess(QString("%1").arg(combinationToFloat(resultUnit.value(15),resultUnit.value(14)),0,'f',2));
                    // 最大切割长度 D216
                    setMax_Cut_Length(QString("%1").arg(combinationToFloat(resultUnit.value(17),resultUnit.value(16)),0,'f',2));
                    // 手动加工段数 D230
                    setCutSegments_NormalProcess(QString("%1").arg(resultUnit.value(30)));
                    // 电机旋钮位置 D229
                    setMechine_Saws_Mode(QString("%1").arg(resultUnit.value(29)));

                    read_Normal_Process_Hold_2();

                }
            });
        }
    }
}

void ModbusControl::read_Normal_Process_Hold_2()
{
    QModbusDataUnit readUnit(QModbusDataUnit::HoldingRegisters,1300,120);

    if(auto* reply = (m_Modbus->sendReadRequest(readUnit,1))){
        if(!reply->isFinished())
        {
            connect(reply,&QModbusReply::finished,this,[reply, this]()
            {
                if(reply->error() == QModbusDevice::NoError)
                {
                    const QModbusDataUnit resultUnit = reply->result();

                    // 回拉距离 D1390
                    setPull_Back_Distance(QString("%1").arg(combinationToFloat(resultUnit.value(91),resultUnit.value(90)),0,'f',2));

                    // 45度安全位置 D1394
                    setSafe_Distance_45(QString("%1").arg(combinationToFloat(resultUnit.value(95),resultUnit.value(94)),0,'f',2));

                    calculate_MaterialLength_Max_And_Min();
                }
            });
        }
    }
}

void ModbusControl::calculate_MaterialLength_Max_And_Min()
{
    QString MaxValue = "0";
    QString MinValue = "0";
    if(!M_390() && !M_391())
    {
        if(!M_394())
        {
            MinValue = QString("%1").arg(OriginValue().toFloat() + MaterialHeight_NormalProcess().toFloat() * 2);
            MaxValue = QString("%1").arg(Max_Cut_Length().toFloat() + MaterialHeight_NormalProcess().toFloat() * 2);
        }
        else
        {
            MinValue = QString("%1").arg(Safe_Distance_45().toFloat());
            MaxValue = QString("%1").arg(Max_Cut_Length().toFloat());
        }
    }

    if(M_390() && M_391())
    {
        MinValue = QString("%1").arg(OriginValue().toFloat());
        MaxValue = QString("%1").arg(Max_Cut_Length().toFloat());
    }

    if((M_390() && !M_391()) || (!M_390() && M_391()))
    {
        if(!M_394())
        {
            MinValue = QString("%1").arg(OriginValue().toFloat() + MaterialHeight_NormalProcess().toFloat());
            MaxValue = QString("%1").arg(Max_Cut_Length().toFloat() + MaterialHeight_NormalProcess().toFloat());
        }
        else
        {
            MinValue = QString("%1").arg(Safe_Distance_45().toFloat());
            MaxValue = QString("%1").arg(Max_Cut_Length().toFloat());
        }
    }

    setMaterialLength_Max(MaxValue);
    setMaterialLength_Min(MinValue);

}

void ModbusControl::read_ExtraLong_Process_Hold()
{
    read_ExtraLong_Process_Hold_1();
}

void ModbusControl::read_ExtraLong_Process_Hold_1()
{
    QModbusDataUnit readUnit(QModbusDataUnit::HoldingRegisters,200,120);

    if(auto* reply = (m_Modbus->sendReadRequest(readUnit,1))){
        if(!reply->isFinished())
        {
            connect(reply,&QModbusReply::finished,this,[reply, this]()
            {
                if(reply->error() == QModbusDevice::NoError)
                {
                    const QModbusDataUnit resultUnit = reply->result();

                    // 手动料长 D210
                    setOriginValue(QString("%1").arg(combinationToFloat(resultUnit.value(11),resultUnit.value(10)),0,'f',2));

                    // 手动料高 D214
                    setMaterialHeight_NormalProcess(QString("%1").arg(combinationToFloat(resultUnit.value(15),resultUnit.value(14)),0,'f',2));

                    // 最大切割长度 D216
                    setMax_Cut_Length(QString("%1").arg(combinationToFloat(resultUnit.value(17),resultUnit.value(16)),0,'f',2));

                    // 超长料长 D226
                    setExtraLong_MaterialLength(QString("%1").arg(combinationToFloat(resultUnit.value(27),resultUnit.value(26)),0,'f',2));

                    // 电机旋钮位置 D229
                    setMechine_Saws_Mode(QString("%1").arg(resultUnit.value(29)));

                    // 当前段数 D231
                    setCurrentCutSegments_NormalProcess(QString("%1").arg(resultUnit.value(31)));

                    read_ExtraLong_Process_Hold_2();
                }
            });
        }
    }
}

void ModbusControl::read_ExtraLong_Process_Hold_2()
{
    QModbusDataUnit readUnit(QModbusDataUnit::HoldingRegisters,1300,120);

    if(auto* reply = (m_Modbus->sendReadRequest(readUnit,1))){
        if(!reply->isFinished())
        {
            connect(reply,&QModbusReply::finished,this,[reply, this]()
            {
                if(reply->error() == QModbusDevice::NoError)
                {
                    const QModbusDataUnit resultUnit = reply->result();

                    // 超长补偿 D1392
                    setExtraLong_MaterialLength_Compensate(QString("%1").arg(combinationToFloat(resultUnit.value(83),resultUnit.value(82)),0,'f',2));

                    // 内摆安全位置 D1394
                    setSafe_Distance_45(QString("%1").arg(combinationToFloat(resultUnit.value(95),resultUnit.value(94)),0,'f',2));

                    calculate_ExtraLong_Length_Max_And_Min();

                }
            });
        }
    }
}

void ModbusControl::calculate_ExtraLong_Length_Max_And_Min()
{
    QString MaxValue = "0";
    QString MinValue = "0";
    if(!M_390() && !M_391())
    {
        if(!M_394())
        {
            MinValue = QString("%1").arg(Max_Cut_Length().toFloat() + MaterialHeight_NormalProcess().toFloat() * 2);
            MaxValue = QString("%1").arg(Max_Cut_Length().toFloat() * 2 + MaterialHeight_NormalProcess().toFloat() * 2 - OriginValue().toFloat());
        }
        else
        {
            MinValue = QString("%1").arg(Max_Cut_Length().toFloat());
            MaxValue = QString("%1").arg(Max_Cut_Length().toFloat() * 2 - Safe_Distance_45().toFloat());
        }
    }

    if(M_390() && M_391())
    {
        MinValue = QString("%1").arg(Max_Cut_Length().toFloat());
        MaxValue = QString("%1").arg(Max_Cut_Length().toFloat() * 2 - OriginValue().toFloat());
    }

    if((M_390() && !M_391()) || (!M_390() && M_391()))
    {
        if(!M_394())
        {
            MinValue = QString("%1").arg(Max_Cut_Length().toFloat() + MaterialHeight_NormalProcess().toFloat());
            MaxValue = QString("%1").arg(Max_Cut_Length().toFloat() * 2 + MaterialHeight_NormalProcess().toFloat() - OriginValue().toFloat());
        }
        else
        {
            MinValue = QString("%1").arg(Max_Cut_Length().toFloat());
            MaxValue = QString("%1").arg(Max_Cut_Length().toFloat() * 2 - Safe_Distance_45().toFloat());
        }
    }

    setExtraLong_Max(MaxValue);
    setExtraLong_Min(MinValue);
}

void ModbusControl::read_ExtraShort_Process_Hold()
{
    read_ExtraShort_Process_Hold_1();
}

void ModbusControl::read_ExtraShort_Process_Hold_1()
{
    QModbusDataUnit readUnit(QModbusDataUnit::HoldingRegisters,200,120);

    if(auto* reply = (m_Modbus->sendReadRequest(readUnit,1))){
        if(!reply->isFinished())
        {
            connect(reply,&QModbusReply::finished,this,[reply, this]()
            {
                if(reply->error() == QModbusDevice::NoError)
                {
                    const QModbusDataUnit resultUnit = reply->result();

                    // 原点值 D210
                    setOriginValue(QString("%1").arg(combinationToFloat(resultUnit.value(11),resultUnit.value(10)),0,'f',2));

                    // 手动料高 D214
                    setMaterialHeight_NormalProcess(QString("%1").arg(combinationToFloat(resultUnit.value(15),resultUnit.value(14)),0,'f',2));

                    // 超短料长 D224
                    setExtraShort_MaterialLength(QString("%1").arg(combinationToFloat(resultUnit.value(25),resultUnit.value(24)),0,'f',2));

                    // 电机旋钮位置 D229
                    setMechine_Saws_Mode(QString("%1").arg(resultUnit.value(29)));

                    read_ExtraShort_Process_Hold_2();

                }
            });
        }
    }
}

void ModbusControl::read_ExtraShort_Process_Hold_2()
{
    QModbusDataUnit readUnit(QModbusDataUnit::HoldingRegisters,1300,120);

    if(auto* reply = (m_Modbus->sendReadRequest(readUnit,1))){
        if(!reply->isFinished())
        {
            connect(reply,&QModbusReply::finished,this,[reply, this]()
            {
                if(reply->error() == QModbusDevice::NoError)
                {
                    const QModbusDataUnit resultUnit = reply->result();

                    // 超短补偿 D1380
                    setExtraShort_Compensate(QString("%1").arg(combinationToFloat(resultUnit.value(81),resultUnit.value(80)),0,'f',2));

                    // 回拉距离 D1390
                    setPull_Back_Distance(QString("%1").arg(combinationToFloat(resultUnit.value(91),resultUnit.value(90)),0,'f',2));

                    // 内摆安全位置 D1394
                    setSafe_Distance_45(QString("%1").arg(combinationToFloat(resultUnit.value(95),resultUnit.value(94)),0,'f',2));

                    calculate_ExtraShort_Length_Max_And_Min();

                }
            });
        }
    }
}

void ModbusControl::calculate_ExtraShort_Length_Max_And_Min()
{
    QString MaxValue = "0";
    QString MinValue = "0";
    if(!M_390() && !M_391())
    {
        if(!M_394())
        {
            MinValue = QString("%1").arg(OriginValue().toFloat() - Pull_Back_Distance().toFloat() + MaterialHeight_NormalProcess().toFloat() * 2);
            MaxValue = QString("%1").arg(OriginValue().toFloat() + MaterialHeight_NormalProcess().toFloat() * 2);
        }
        else
        {
            MinValue = QString("%1").arg(Safe_Distance_45().toFloat() - Pull_Back_Distance().toFloat());
            MaxValue = QString("%1").arg(Safe_Distance_45().toFloat());
        }
    }

    if(M_390() && M_391())
    {
        MinValue = QString("%1").arg(OriginValue().toFloat() - Pull_Back_Distance().toFloat());
        MaxValue = QString("%1").arg(OriginValue().toFloat());
    }

    if((M_390() && !M_391()) || (!M_390() && M_391()))
    {
        if(!M_394())
        {
            MinValue = QString("%1").arg(OriginValue().toFloat() - Pull_Back_Distance().toFloat() + MaterialHeight_NormalProcess().toFloat());
            MaxValue = QString("%1").arg(OriginValue().toFloat() + MaterialHeight_NormalProcess().toFloat());
        }
        else
        {
            MinValue = QString("%1").arg(Safe_Distance_45().toFloat() - Pull_Back_Distance().toFloat());
            MaxValue = QString("%1").arg(Safe_Distance_45().toFloat());
        }
    }

    setExtraShort_Max(MaxValue);
    setExtraShort_Min(MinValue);
}

void ModbusControl::read_Corner_Process_Hold()
{
    read_Corner_Process_Hold_1();
}

void ModbusControl::read_Corner_Process_Hold_1()
{
    QModbusDataUnit readUnit(QModbusDataUnit::HoldingRegisters,1200,120);

    if(auto* reply = (m_Modbus->sendReadRequest(readUnit,1))){
        if(!reply->isFinished())
        {
            connect(reply,&QModbusReply::finished,this,[reply, this]()
            {
                if(reply->error() == QModbusDevice::NoError)
                {
                    const QModbusDataUnit resultUnit = reply->result();

                    // 角码原料长度 D1276
                    setCorner_MaterialLength(QString("%1").arg(combinationToFloat(resultUnit.value(77),resultUnit.value(76)),0,'f',2));

                    // 角码切割长度 D1272
                    setCorner_Length(QString("%1").arg(combinationToFloat(resultUnit.value(73),resultUnit.value(72)),0,'f',2));

                    // 角码刀补 D1274
                    setCorner_Knife_Compensate(QString("%1").arg(combinationToFloat(resultUnit.value(75),resultUnit.value(74)),0,'f',2));

                    // 角码最短料长 D1292
                    setCorner_MaterialLength_Min(QString("%1").arg(combinationToFloat(resultUnit.value(93),resultUnit.value(92)),0,'f',2));


                    read_Corner_Process_Hold_2();

                }
            });
        }
    }
}

void ModbusControl::read_Corner_Process_Hold_2()
{
    QModbusDataUnit readUnit(QModbusDataUnit::HoldingRegisters,200,120);

    if(auto* reply = (m_Modbus->sendReadRequest(readUnit,1))){
        if(!reply->isFinished())
        {
            connect(reply,&QModbusReply::finished,this,[reply, this]()
            {
                if(reply->error() == QModbusDevice::NoError)
                {
                    const QModbusDataUnit resultUnit = reply->result();

                    // 角码切割段数 D228
                    setCorner_Cut_Segments(QString("%1").arg(resultUnit.value(28)));
                    // 电机旋钮位置 D229
                    setMechine_Saws_Mode(QString("%1").arg(resultUnit.value(29)));

                }
            });
        }
    }
}

void ModbusControl::read_Handle_Process_Hold()
{
    read_Handle_Process_Hold_1();
}

void ModbusControl::read_Handle_Process_Hold_1()
{
    QModbusDataUnit readUnit(QModbusDataUnit::HoldingRegisters,200,120);

    if(auto* reply = (m_Modbus->sendReadRequest(readUnit,1))){
        if(!reply->isFinished())
        {
            connect(reply,&QModbusReply::finished,this,[reply, this]()
            {
                if(reply->error() == QModbusDevice::NoError)
                {
                    const QModbusDataUnit resultUnit = reply->result();

                    // 手动料长 D212
                    setMaterialLength_NormalProcess(QString("%1").arg(combinationToFloat(resultUnit.value(13),resultUnit.value(12)),0,'f',2));
                    // 手动料高 D214
                    setMaterialHeight_NormalProcess(QString("%1").arg(combinationToFloat(resultUnit.value(15),resultUnit.value(14)),0,'f',2));
                    // 电机旋钮位置 D229
                    setMechine_Saws_Mode(QString("%1").arg(resultUnit.value(29)));
                    // 手动加工段数 D230
                    setCutSegments_NormalProcess(QString("%1").arg(resultUnit.value(30)));
                    // 把手位置 D282
                    setHandle_Location(QString("%1").arg(combinationToFloat(resultUnit.value(83),resultUnit.value(82)),0,'f',2));
                    // 把手宽度 D284
                    setHandle_Width(QString("%1").arg(combinationToFloat(resultUnit.value(85),resultUnit.value(84)),0,'f',2));

                    read_Handle_Process_Hold_2();
                }
            });
        }
    }
}

void ModbusControl::read_Handle_Process_Hold_2()
{
    QModbusDataUnit readUnit(QModbusDataUnit::HoldingRegisters,300,120);

    if(auto* reply = (m_Modbus->sendReadRequest(readUnit,1))){
        if(!reply->isFinished())
        {
            connect(reply,&QModbusReply::finished,this,[reply, this]()
            {
                if(reply->error() == QModbusDevice::NoError)
                {
                    const QModbusDataUnit resultUnit = reply->result();

                    // 把手位置补偿 D378
                    setHandle_Location_Compensate(QString("%1").arg(combinationToFloat(resultUnit.value(79),resultUnit.value(78)),0,'f',2));

                }
            });
        }
    }
}

void ModbusControl::read_Material_List_QR_Code_List_Process_Hold()
{
    read_QR_List_Hold_1();
}

void ModbusControl::read_QR_List_Hold_1()
{
    QModbusDataUnit readUnit(QModbusDataUnit::HoldingRegisters,1600,120);

    if(auto* reply = (m_Modbus->sendReadRequest(readUnit,1))){
        if(!reply->isFinished())
        {
            connect(reply,&QModbusReply::finished,this,[reply, this]()
            {
                if(reply->error() == QModbusDevice::NoError)
                {
                    const QModbusDataUnit resultUnit = reply->result();

                    // 切割长度1 D1600
                    setQR_List_CutLength_1(QString("%1").arg(combinationToFloat(resultUnit.value(1),resultUnit.value(0)),0,'f',2));
                    setQR_List_CutLength_2(QString("%1").arg(combinationToFloat(resultUnit.value(3),resultUnit.value(2)),0,'f',2));
                    setQR_List_CutLength_3(QString("%1").arg(combinationToFloat(resultUnit.value(5),resultUnit.value(4)),0,'f',2));
                    setQR_List_CutLength_4(QString("%1").arg(combinationToFloat(resultUnit.value(7),resultUnit.value(6)),0,'f',2));
                    setQR_List_CutLength_5(QString("%1").arg(combinationToFloat(resultUnit.value(9),resultUnit.value(8)),0,'f',2));
                    setQR_List_CutLength_6(QString("%1").arg(combinationToFloat(resultUnit.value(11),resultUnit.value(10)),0,'f',2));
                    setQR_List_CutLength_7(QString("%1").arg(combinationToFloat(resultUnit.value(13),resultUnit.value(12)),0,'f',2));
                    setQR_List_CutLength_8(QString("%1").arg(combinationToFloat(resultUnit.value(15),resultUnit.value(14)),0,'f',2));
                    setQR_List_CutLength_9(QString("%1").arg(combinationToFloat(resultUnit.value(17),resultUnit.value(16)),0,'f',2));
                    setQR_List_CutLength_10(QString("%1").arg(combinationToFloat(resultUnit.value(19),resultUnit.value(18)),0,'f',2));
                    setQR_List_CutLength_11(QString("%1").arg(combinationToFloat(resultUnit.value(21),resultUnit.value(20)),0,'f',2));
                    setQR_List_CutLength_12(QString("%1").arg(combinationToFloat(resultUnit.value(23),resultUnit.value(22)),0,'f',2));
                    setQR_List_CutLength_13(QString("%1").arg(combinationToFloat(resultUnit.value(25),resultUnit.value(24)),0,'f',2));
                    setQR_List_CutLength_14(QString("%1").arg(combinationToFloat(resultUnit.value(27),resultUnit.value(26)),0,'f',2));
                    setQR_List_CutLength_15(QString("%1").arg(combinationToFloat(resultUnit.value(29),resultUnit.value(28)),0,'f',2));
                    setQR_List_CutLength_16(QString("%1").arg(combinationToFloat(resultUnit.value(31),resultUnit.value(30)),0,'f',2));
                    setQR_List_CutLength_17(QString("%1").arg(combinationToFloat(resultUnit.value(33),resultUnit.value(32)),0,'f',2));
                    setQR_List_CutLength_18(QString("%1").arg(combinationToFloat(resultUnit.value(35),resultUnit.value(34)),0,'f',2));
                    setQR_List_CutLength_19(QString("%1").arg(combinationToFloat(resultUnit.value(37),resultUnit.value(36)),0,'f',2));
                    setQR_List_CutLength_20(QString("%1").arg(combinationToFloat(resultUnit.value(39),resultUnit.value(38)),0,'f',2));

                    setQR_List_Left_1(QString("%1").arg(resultUnit.value(40)));
                    setQR_List_Right_1(QString("%1").arg(resultUnit.value(41)));
                    setQR_List_Left_2(QString("%1").arg(resultUnit.value(42)));
                    setQR_List_Right_2(QString("%1").arg(resultUnit.value(43)));
                    setQR_List_Left_3(QString("%1").arg(resultUnit.value(44)));
                    setQR_List_Right_3(QString("%1").arg(resultUnit.value(45)));
                    setQR_List_Left_4(QString("%1").arg(resultUnit.value(46)));
                    setQR_List_Right_4(QString("%1").arg(resultUnit.value(47)));
                    setQR_List_Left_5(QString("%1").arg(resultUnit.value(48)));
                    setQR_List_Right_5(QString("%1").arg(resultUnit.value(49)));
                    setQR_List_Left_6(QString("%1").arg(resultUnit.value(50)));
                    setQR_List_Right_6(QString("%1").arg(resultUnit.value(51)));
                    setQR_List_Left_7(QString("%1").arg(resultUnit.value(52)));
                    setQR_List_Right_7(QString("%1").arg(resultUnit.value(53)));
                    setQR_List_Left_8(QString("%1").arg(resultUnit.value(54)));
                    setQR_List_Right_8(QString("%1").arg(resultUnit.value(55)));
                    setQR_List_Left_9(QString("%1").arg(resultUnit.value(56)));
                    setQR_List_Right_9(QString("%1").arg(resultUnit.value(57)));
                    setQR_List_Left_10(QString("%1").arg(resultUnit.value(58)));
                    setQR_List_Right_10(QString("%1").arg(resultUnit.value(59)));
                    setQR_List_Left_11(QString("%1").arg(resultUnit.value(60)));
                    setQR_List_Right_11(QString("%1").arg(resultUnit.value(61)));
                    setQR_List_Left_12(QString("%1").arg(resultUnit.value(62)));
                    setQR_List_Right_12(QString("%1").arg(resultUnit.value(63)));
                    setQR_List_Left_13(QString("%1").arg(resultUnit.value(64)));
                    setQR_List_Right_13(QString("%1").arg(resultUnit.value(65)));
                    setQR_List_Left_14(QString("%1").arg(resultUnit.value(66)));
                    setQR_List_Right_14(QString("%1").arg(resultUnit.value(67)));
                    setQR_List_Left_15(QString("%1").arg(resultUnit.value(68)));
                    setQR_List_Right_15(QString("%1").arg(resultUnit.value(69)));
                    setQR_List_Left_16(QString("%1").arg(resultUnit.value(70)));
                    setQR_List_Right_16(QString("%1").arg(resultUnit.value(71)));
                    setQR_List_Left_17(QString("%1").arg(resultUnit.value(72)));
                    setQR_List_Right_17(QString("%1").arg(resultUnit.value(73)));
                    setQR_List_Left_18(QString("%1").arg(resultUnit.value(74)));
                    setQR_List_Right_18(QString("%1").arg(resultUnit.value(75)));
                    setQR_List_Left_19(QString("%1").arg(resultUnit.value(76)));
                    setQR_List_Right_19(QString("%1").arg(resultUnit.value(77)));
                    setQR_List_Left_20(QString("%1").arg(resultUnit.value(78)));
                    setQR_List_Right_20(QString("%1").arg(resultUnit.value(79)));

                    setQR_List_CutCount_1(QString("%1").arg(resultUnit.value(80)));
                    setQR_List_CutCount_2(QString("%1").arg(resultUnit.value(81)));
                    setQR_List_CutCount_3(QString("%1").arg(resultUnit.value(82)));
                    setQR_List_CutCount_4(QString("%1").arg(resultUnit.value(83)));
                    setQR_List_CutCount_5(QString("%1").arg(resultUnit.value(84)));
                    setQR_List_CutCount_6(QString("%1").arg(resultUnit.value(85)));
                    setQR_List_CutCount_7(QString("%1").arg(resultUnit.value(86)));
                    setQR_List_CutCount_8(QString("%1").arg(resultUnit.value(87)));
                    setQR_List_CutCount_9(QString("%1").arg(resultUnit.value(88)));
                    setQR_List_CutCount_10(QString("%1").arg(resultUnit.value(89)));
                    setQR_List_CutCount_11(QString("%1").arg(resultUnit.value(90)));
                    setQR_List_CutCount_12(QString("%1").arg(resultUnit.value(91)));
                    setQR_List_CutCount_13(QString("%1").arg(resultUnit.value(92)));
                    setQR_List_CutCount_14(QString("%1").arg(resultUnit.value(93)));
                    setQR_List_CutCount_15(QString("%1").arg(resultUnit.value(94)));
                    setQR_List_CutCount_16(QString("%1").arg(resultUnit.value(95)));
                    setQR_List_CutCount_17(QString("%1").arg(resultUnit.value(96)));
                    setQR_List_CutCount_18(QString("%1").arg(resultUnit.value(97)));
                    setQR_List_CutCount_19(QString("%1").arg(resultUnit.value(98)));
                    setQR_List_CutCount_20(QString("%1").arg(resultUnit.value(99)));

                    setQR_List_WorkedCount_1(QString("%1").arg(resultUnit.value(100)));
                    setQR_List_WorkedCount_2(QString("%1").arg(resultUnit.value(101)));
                    setQR_List_WorkedCount_3(QString("%1").arg(resultUnit.value(102)));
                    setQR_List_WorkedCount_4(QString("%1").arg(resultUnit.value(103)));
                    setQR_List_WorkedCount_5(QString("%1").arg(resultUnit.value(104)));
                    setQR_List_WorkedCount_6(QString("%1").arg(resultUnit.value(105)));
                    setQR_List_WorkedCount_7(QString("%1").arg(resultUnit.value(106)));
                    setQR_List_WorkedCount_8(QString("%1").arg(resultUnit.value(107)));
                    setQR_List_WorkedCount_9(QString("%1").arg(resultUnit.value(108)));
                    setQR_List_WorkedCount_10(QString("%1").arg(resultUnit.value(109)));
                    setQR_List_WorkedCount_11(QString("%1").arg(resultUnit.value(110)));
                    setQR_List_WorkedCount_12(QString("%1").arg(resultUnit.value(111)));
                    setQR_List_WorkedCount_13(QString("%1").arg(resultUnit.value(112)));
                    setQR_List_WorkedCount_14(QString("%1").arg(resultUnit.value(113)));
                    setQR_List_WorkedCount_15(QString("%1").arg(resultUnit.value(114)));
                    setQR_List_WorkedCount_16(QString("%1").arg(resultUnit.value(115)));
                    setQR_List_WorkedCount_17(QString("%1").arg(resultUnit.value(116)));
                    setQR_List_WorkedCount_18(QString("%1").arg(resultUnit.value(117)));
                    setQR_List_WorkedCount_19(QString("%1").arg(resultUnit.value(118)));
                    setQR_List_WorkedCount_20(QString("%1").arg(resultUnit.value(119)));

                }
            });
        }
    }
}

void ModbusControl::read_QR_List_Hold_2()
{

}

void ModbusControl::read_Mechine_Parameters_Parameter_Setting_Hold()
{
    read_Mechine_Parameters_Hold_1();
}

void ModbusControl::read_Mechine_Parameters_Hold_1()
{

    QModbusDataUnit readUnit(QModbusDataUnit::HoldingRegisters,200,120);

    if(auto* reply = (m_Modbus->sendReadRequest(readUnit,1))){
        if(!reply->isFinished())
        {
            connect(reply,&QModbusReply::finished,this,[reply, this]()
            {
                if(reply->error() == QModbusDevice::NoError)
                {
                    const QModbusDataUnit resultUnit = reply->result();

                    // 定位速度 D206
                    setAuto_Location_Speed(QString("%1").arg(combinationToFloat(resultUnit.value(7),resultUnit.value(6)),0,'f',2));
                    // 手动料长 D210
                    setOriginValue(QString("%1").arg(combinationToFloat(resultUnit.value(11),resultUnit.value(10)),0,'f',2));
                    // 左锯工进时间 D232
                    setLeftSaws_OutTime(QString("%1").arg(combinationToFloat(resultUnit.value(33),resultUnit.value(32)),0,'f',2));
                    // 右锯工进时间 D234
                    setRightSaws_OutTime(QString("%1").arg(combinationToFloat(resultUnit.value(35),resultUnit.value(34)),0,'f',2));
                    // 电磁阀断电延时 D238
                    setElectric_Valve_Power_Off_Time(QString("%1").arg(combinationToFloat(resultUnit.value(39),resultUnit.value(38)),0,'f',2));

                    read_Mechine_Parameters_Hold_2();

                }
            });
        }
    }





}

void ModbusControl::read_Mechine_Parameters_Hold_2()
{
    QModbusDataUnit readUnit(QModbusDataUnit::HoldingRegisters,300,120);

    if(auto* reply = (m_Modbus->sendReadRequest(readUnit,1))){
        if(!reply->isFinished())
        {
            connect(reply,&QModbusReply::finished,this,[reply, this]()
            {
                if(reply->error() == QModbusDevice::NoError)
                {
                    const QModbusDataUnit resultUnit = reply->result();

                    // 左右吹气时间 D374
                    setLeft_Right_Blow_Time(QString("%1").arg(resultUnit.value(74)));
                    read_Mechine_Parameters_Hold_3();

                }
            });
        }
    }
}

void ModbusControl::read_Mechine_Parameters_Hold_3()
{
    QModbusDataUnit readUnit(QModbusDataUnit::HoldingRegisters,600,120);

    if(auto* reply = (m_Modbus->sendReadRequest(readUnit,1))){
        if(!reply->isFinished())
        {
            connect(reply,&QModbusReply::finished,this,[reply, this]()
            {
                if(reply->error() == QModbusDevice::NoError)
                {
                    const QModbusDataUnit resultUnit = reply->result();

                    // 左45度补偿 D670
                    setLeftSaws_45_Compensate(QString("%1").arg(combinationToFloat(resultUnit.value(71),resultUnit.value(70)),0,'f',2));
                    // 右45度补偿 D672
                    setRightSaws_45_Compensate(QString("%1").arg(combinationToFloat(resultUnit.value(73),resultUnit.value(72)),0,'f',2));
                    // qDebug()<<"D672: "<<RightSaws_45_Compensate();
                    // 测料高基准值 D680
                    setMaterial_Height_Observe_Base(QString("%1").arg(combinationToFloat(resultUnit.value(81),resultUnit.value(80)),0,'f',2));
                    // qDebug()<<"D680 : "<<Material_Height_Observe_Base();

                    read_Mechine_Parameters_Hold_4();

                }
            });
        }
    }
}

void ModbusControl::read_Mechine_Parameters_Hold_4()
{
    QModbusDataUnit readUnit(QModbusDataUnit::HoldingRegisters,1280,120);

    if(auto* reply = (m_Modbus->sendReadRequest(readUnit,1))){
        if(!reply->isFinished())
        {
            connect(reply,&QModbusReply::finished,this,[reply, this]()
            {
                if(reply->error() == QModbusDevice::NoError)
                {
                    const QModbusDataUnit resultUnit = reply->result();

                    // 压紧动作时间 D1280
                    setImpactActiveTime(QString("%1").arg(combinationToFloat(resultUnit.value(1),resultUnit.value(0)),0,'f',2));
                    // 料高检测时间 D1288
                    setMaterial_Height_Observe_Time(QString("%1").arg(combinationToFloat(resultUnit.value(9),resultUnit.value(8)),0,'f',2));
                    // 料高磁尺当量 D1290
                    setMaterial_Height_Ruler_Scale(QString("%1").arg(combinationToFloat(resultUnit.value(11),resultUnit.value(10)),0,'f',2));
                    // 手动速度 D1392
                    setManual_Location_Speed(QString("%1").arg(combinationToFloat(resultUnit.value(113),resultUnit.value(112)),0,'f',2));
                    // 45度内摆安全位置 D1394
                    setSafe_Distance_45(QString("%1").arg(combinationToFloat(resultUnit.value(115),resultUnit.value(114)),0,'f',2));

                }
            });
        }
    }
}

void ModbusControl::read_Servo_Parameters_Parameter_Setting_Hold()
{
    raed_Servo_Parameters_Hold_1();
}

void ModbusControl::raed_Servo_Parameters_Hold_1()
{
    QModbusDataUnit readUnit(QModbusDataUnit::HoldingRegisters,200,120);

    if(auto* reply = (m_Modbus->sendReadRequest(readUnit,1))){
        if(!reply->isFinished())
        {
            connect(reply,&QModbusReply::finished,this,[reply, this]()
            {
                if(reply->error() == QModbusDevice::NoError)
                {
                    const QModbusDataUnit resultUnit = reply->result();

                    // 每转脉冲数 D200
                    setPer_Rotation_Pulse(QString("%1").arg(combinationToFloat(resultUnit.value(1),resultUnit.value(0)),0,'f',2));
                    // 最大切割长度 D216
                    setMax_Cut_Length(QString("%1").arg(combinationToFloat(resultUnit.value(17),resultUnit.value(16)),0,'f',2));
                    // 找零点高速 D220
                    setFind_Zero_High_Speed(QString("%1").arg(combinationToFloat(resultUnit.value(21),resultUnit.value(20)),0,'f',2));
                    // 加减速时间 D208 [INT 16]
                    setAcc_Dec_Time(QString("%1").arg(resultUnit.value(8)));

                    // 每转位移量 D202
                    setPer_Rotation_Distance(QString("%1").arg(combinationToFloat(resultUnit.value(3),resultUnit.value(2)),0,'f',2));
                    // 反向软限位 D218
                    setReverse_Soft_Limit(QString("%1").arg(combinationToFloat(resultUnit.value(19),resultUnit.value(18)),0,'f',2));
                    // 找零点低速 D222
                    setFind_Zero_Low_Speed(QString("%1").arg(combinationToFloat(resultUnit.value(23),resultUnit.value(22)),0,'f',2));


                    read_Servo_Parameters_Hold_2();
                }
            });
        }
    }
}

void ModbusControl::read_Servo_Parameters_Hold_2()
{
    QModbusDataUnit readUnit(QModbusDataUnit::HoldingRegisters,600,120);

    if(auto* reply = (m_Modbus->sendReadRequest(readUnit,1))){
        if(!reply->isFinished())
        {
            connect(reply,&QModbusReply::finished,this,[reply, this]()
            {
                if(reply->error() == QModbusDevice::NoError)
                {
                    const QModbusDataUnit resultUnit = reply->result();

                    // 刹车断电延时 D602 [INT 16]
                    setBrake_Close_Delay(QString("%1").arg(resultUnit.value(1)));

                    read_Servo_Parameters_Hold_3();
                }
            });
        }
    }
}

void ModbusControl::read_Servo_Parameters_Hold_3()
{
    QModbusDataUnit readUnit(QModbusDataUnit::HoldingRegisters,1200,120);

    if(auto* reply = (m_Modbus->sendReadRequest(readUnit,1))){
        if(!reply->isFinished())
        {
            connect(reply,&QModbusReply::finished,this,[reply, this]()
            {
                if(reply->error() == QModbusDevice::NoError)
                {
                    const QModbusDataUnit resultUnit = reply->result();

                    // 刹车打开时间 D1278
                    setBrake_Open_Time(QString("%1").arg(combinationToFloat(resultUnit.value(79),resultUnit.value(78)),0,'f',2));

                }
            });
        }
    }
}

void ModbusControl::read_Bracket_Parameters_Parameter_Setting_Hold()
{
    read_Bracket_Parameter_Hold_1();
}

void ModbusControl::read_Bracket_Parameter_Hold_1()
{
    QModbusDataUnit readUnit(QModbusDataUnit::HoldingRegisters,200,120);

    if(auto* reply = (m_Modbus->sendReadRequest(readUnit,1))){
        if(!reply->isFinished())
        {
            connect(reply,&QModbusReply::finished,this,[reply, this]()
            {
                if(reply->error() == QModbusDevice::NoError)
                {
                    const QModbusDataUnit resultUnit = reply->result();

                    // 中托料架下限 D296
                    setBracket_Mid_Min(QString("%1").arg(combinationToFloat(resultUnit.value(97),resultUnit.value(96)),0,'f',2));

                    read_Bracket_Parameter_Hold_2();
                }
            });
        }
    }
}

void ModbusControl::read_Bracket_Parameter_Hold_2()
{
    QModbusDataUnit readUnit(QModbusDataUnit::HoldingRegisters,600,120);

    if(auto* reply = (m_Modbus->sendReadRequest(readUnit,1))){
        if(!reply->isFinished())
        {
            connect(reply,&QModbusReply::finished,this,[reply, this]()
            {
                if(reply->error() == QModbusDevice::NoError)
                {
                    const QModbusDataUnit resultUnit = reply->result();

                    // 托料架安全距离 D612
                    setBracket_Safe_Distance(QString("%1").arg(combinationToFloat(resultUnit.value(13),resultUnit.value(12)),0,'f',2));

                    read_Bracket_Parameter_Hold_3();
                }
            });
        }
    }
}

void ModbusControl::read_Bracket_Parameter_Hold_3()
{
    QModbusDataUnit readUnit(QModbusDataUnit::HoldingRegisters,1200,120);

    if(auto* reply = (m_Modbus->sendReadRequest(readUnit,1))){
        if(!reply->isFinished())
        {
            connect(reply,&QModbusReply::finished,this,[reply, this]()
            {
                if(reply->error() == QModbusDevice::NoError)
                {
                    const QModbusDataUnit resultUnit = reply->result();

                    // 前托料架触发点 D1294
                    setBracket_Front_Location(QString("%1").arg(combinationToFloat(resultUnit.value(95),resultUnit.value(94)),0,'f',2));
                    // 前托料架触发点 D1296
                    setBracket_Mid_Max(QString("%1").arg(combinationToFloat(resultUnit.value(97),resultUnit.value(96)),0,'f',2));
                    // 前托料架触发点 D1298
                    setBracket_Back_Location(QString("%1").arg(combinationToFloat(resultUnit.value(99),resultUnit.value(98)),0,'f',2));
                }
            });
        }
    }
}

void ModbusControl::read_Location_Compensate_Parameter_Setting_Hold()
{
    read_Location_Compensate_Hold_1();
}

void ModbusControl::read_Location_Compensate_Hold_1()
{
    QModbusDataUnit readUnit(QModbusDataUnit::HoldingRegisters,1300,120);

    if(auto* reply = (m_Modbus->sendReadRequest(readUnit,1))){
        if(!reply->isFinished())
        {
            connect(reply,&QModbusReply::finished,this,[reply, this]()
            {
                if(reply->error() == QModbusDevice::NoError)
                {
                    const QModbusDataUnit resultUnit = reply->result();

                    // 位置补偿1
                    setLocation_Compensate_1(QString("%1").arg(combinationToFloat(resultUnit.value(3),resultUnit.value(2)),0,'f',2));
                    // 位置补偿2
                    setLocation_Compensate_2(QString("%1").arg(combinationToFloat(resultUnit.value(5),resultUnit.value(4)),0,'f',2));
                    // 位置补偿3
                    setLocation_Compensate_3(QString("%1").arg(combinationToFloat(resultUnit.value(7),resultUnit.value(6)),0,'f',2));
                    // 位置补偿4
                    setLocation_Compensate_4(QString("%1").arg(combinationToFloat(resultUnit.value(9),resultUnit.value(8)),0,'f',2));
                    // 位置补偿5
                    setLocation_Compensate_5(QString("%1").arg(combinationToFloat(resultUnit.value(11),resultUnit.value(10)),0,'f',2));
                    // 位置补偿6
                    setLocation_Compensate_6(QString("%1").arg(combinationToFloat(resultUnit.value(13),resultUnit.value(12)),0,'f',2));
                    // 位置补偿7
                    setLocation_Compensate_7(QString("%1").arg(combinationToFloat(resultUnit.value(15),resultUnit.value(14)),0,'f',2));
                    // 位置补偿8
                    setLocation_Compensate_8(QString("%1").arg(combinationToFloat(resultUnit.value(17),resultUnit.value(16)),0,'f',2));
                    // 位置补偿9
                    setLocation_Compensate_9(QString("%1").arg(combinationToFloat(resultUnit.value(19),resultUnit.value(18)),0,'f',2));
                    // 位置补偿10
                    setLocation_Compensate_10(QString("%1").arg(combinationToFloat(resultUnit.value(21),resultUnit.value(20)),0,'f',2));
                    // 位置补偿11
                    setLocation_Compensate_11(QString("%1").arg(combinationToFloat(resultUnit.value(23),resultUnit.value(22)),0,'f',2));
                    // 位置补偿12
                    setLocation_Compensate_12(QString("%1").arg(combinationToFloat(resultUnit.value(25),resultUnit.value(24)),0,'f',2));
                    // 位置补偿13
                    setLocation_Compensate_13(QString("%1").arg(combinationToFloat(resultUnit.value(27),resultUnit.value(26)),0,'f',2));
                    // 位置补偿14
                    setLocation_Compensate_14(QString("%1").arg(combinationToFloat(resultUnit.value(29),resultUnit.value(28)),0,'f',2));
                    // 位置补偿15
                    setLocation_Compensate_15(QString("%1").arg(combinationToFloat(resultUnit.value(31),resultUnit.value(30)),0,'f',2));
                    // 位置补偿16
                    setLocation_Compensate_16(QString("%1").arg(combinationToFloat(resultUnit.value(33),resultUnit.value(32)),0,'f',2));
                    // 位置补偿17
                    setLocation_Compensate_17(QString("%1").arg(combinationToFloat(resultUnit.value(35),resultUnit.value(34)),0,'f',2));
                    // 位置补偿18
                    setLocation_Compensate_18(QString("%1").arg(combinationToFloat(resultUnit.value(37),resultUnit.value(36)),0,'f',2));
                    // 位置补偿19
                    setLocation_Compensate_19(QString("%1").arg(combinationToFloat(resultUnit.value(39),resultUnit.value(38)),0,'f',2));
                    // 位置补偿20
                    setLocation_Compensate_20(QString("%1").arg(combinationToFloat(resultUnit.value(41),resultUnit.value(40)),0,'f',2));
                    // 位置补偿21
                    setLocation_Compensate_21(QString("%1").arg(combinationToFloat(resultUnit.value(43),resultUnit.value(42)),0,'f',2));
                    // 位置补偿22
                    setLocation_Compensate_22(QString("%1").arg(combinationToFloat(resultUnit.value(45),resultUnit.value(44)),0,'f',2));
                    // 位置补偿23
                    setLocation_Compensate_23(QString("%1").arg(combinationToFloat(resultUnit.value(47),resultUnit.value(46)),0,'f',2));
                    // 位置补偿24
                    setLocation_Compensate_24(QString("%1").arg(combinationToFloat(resultUnit.value(49),resultUnit.value(48)),0,'f',2));
                    // 位置补偿25
                    setLocation_Compensate_25(QString("%1").arg(combinationToFloat(resultUnit.value(51),resultUnit.value(50)),0,'f',2));
                    // 位置补偿26
                    setLocation_Compensate_26(QString("%1").arg(combinationToFloat(resultUnit.value(53),resultUnit.value(52)),0,'f',2));
                    // 位置补偿27
                    setLocation_Compensate_27(QString("%1").arg(combinationToFloat(resultUnit.value(55),resultUnit.value(54)),0,'f',2));
                    // 位置补偿28
                    setLocation_Compensate_28(QString("%1").arg(combinationToFloat(resultUnit.value(57),resultUnit.value(56)),0,'f',2));
                    // 位置补偿29
                    setLocation_Compensate_29(QString("%1").arg(combinationToFloat(resultUnit.value(59),resultUnit.value(58)),0,'f',2));
                    // 摆角专补下限 D1374
                    setSwing_Corner_Compensate_Min(QString("%1").arg(combinationToFloat(resultUnit.value(75),resultUnit.value(74)),0,'f',2));
                    // 摆角专补上限 D1376
                    setSwing_Corner_Compensate_Max(QString("%1").arg(combinationToFloat(resultUnit.value(77),resultUnit.value(76)),0,'f',2));
                    // 摆角专补补偿值 D1378
                    setSwing_Corner_Compensate(QString("%1").arg(combinationToFloat(resultUnit.value(79),resultUnit.value(78)),0,'f',2));

                    read_Location_Compensate_Hold_2();
                }
            });
        }
    }
}

void ModbusControl::read_Location_Compensate_Hold_2()
{
    QModbusDataUnit readUnit(QModbusDataUnit::HoldingRegisters,200,120);

    if(auto* reply = (m_Modbus->sendReadRequest(readUnit,1))){
        if(!reply->isFinished())
        {
            connect(reply,&QModbusReply::finished,this,[reply, this]()
            {
                if(reply->error() == QModbusDevice::NoError)
                {
                    const QModbusDataUnit resultUnit = reply->result();

                    // 手动料长 D212
                    setMaterialLength_NormalProcess(QString("%1").arg(combinationToFloat(resultUnit.value(13),resultUnit.value(12)),0,'f',2));

                }
            });
        }
    }
}

void ModbusControl::read_Any_Location_Compensate_Parameter_Setting_Hold()
{
    read_Any_Location_Compensate_Hold_1();
}

void ModbusControl::read_Any_Location_Compensate_Hold_1()
{
    QModbusDataUnit readUnit(QModbusDataUnit::HoldingRegisters,1750,120);

    if(auto* reply = (m_Modbus->sendReadRequest(readUnit,1))){
        if(!reply->isFinished())
        {
            connect(reply,&QModbusReply::finished,this,[reply, this]()
            {
                if(reply->error() == QModbusDevice::NoError)
                {
                    const QModbusDataUnit resultUnit = reply->result();

                    setAny_Location_Compensate_1_Min(QString("%1").arg(combinationToFloat(resultUnit.value(1),resultUnit.value(0)),0,'f',2));
                    setAny_Location_Compensate_1_Max(QString("%1").arg(combinationToFloat(resultUnit.value(3),resultUnit.value(2)),0,'f',2));
                    setAny_Location_Compensate_1(QString("%1").arg(combinationToFloat(resultUnit.value(5),resultUnit.value(4)),0,'f',2));

                    setAny_Location_Compensate_2_Min(QString("%1").arg(combinationToFloat(resultUnit.value(7),resultUnit.value(6)),0,'f',2));
                    setAny_Location_Compensate_2_Max(QString("%1").arg(combinationToFloat(resultUnit.value(9),resultUnit.value(8)),0,'f',2));
                    setAny_Location_Compensate_2(QString("%1").arg(combinationToFloat(resultUnit.value(11),resultUnit.value(10)),0,'f',2));

                    setAny_Location_Compensate_3_Min(QString("%1").arg(combinationToFloat(resultUnit.value(13),resultUnit.value(12)),0,'f',2));
                    setAny_Location_Compensate_3_Max(QString("%1").arg(combinationToFloat(resultUnit.value(15),resultUnit.value(14)),0,'f',2));
                    setAny_Location_Compensate_3(QString("%1").arg(combinationToFloat(resultUnit.value(17),resultUnit.value(16)),0,'f',2));

                    setAny_Location_Compensate_4_Min(QString("%1").arg(combinationToFloat(resultUnit.value(19),resultUnit.value(18)),0,'f',2));
                    setAny_Location_Compensate_4_Max(QString("%1").arg(combinationToFloat(resultUnit.value(21),resultUnit.value(20)),0,'f',2));
                    setAny_Location_Compensate_4(QString("%1").arg(combinationToFloat(resultUnit.value(23),resultUnit.value(22)),0,'f',2));

                    setAny_Location_Compensate_5_Min(QString("%1").arg(combinationToFloat(resultUnit.value(25),resultUnit.value(24)),0,'f',2));
                    setAny_Location_Compensate_5_Max(QString("%1").arg(combinationToFloat(resultUnit.value(27),resultUnit.value(26)),0,'f',2));
                    setAny_Location_Compensate_5(QString("%1").arg(combinationToFloat(resultUnit.value(29),resultUnit.value(28)),0,'f',2));

                    setAny_Location_Compensate_6_Min(QString("%1").arg(combinationToFloat(resultUnit.value(31),resultUnit.value(30)),0,'f',2));
                    setAny_Location_Compensate_6_Max(QString("%1").arg(combinationToFloat(resultUnit.value(33),resultUnit.value(32)),0,'f',2));
                    setAny_Location_Compensate_6(QString("%1").arg(combinationToFloat(resultUnit.value(35),resultUnit.value(34)),0,'f',2));

                    setAny_Location_Compensate_7_Min(QString("%1").arg(combinationToFloat(resultUnit.value(37),resultUnit.value(36)),0,'f',2));
                    setAny_Location_Compensate_7_Max(QString("%1").arg(combinationToFloat(resultUnit.value(39),resultUnit.value(38)),0,'f',2));
                    setAny_Location_Compensate_7(QString("%1").arg(combinationToFloat(resultUnit.value(41),resultUnit.value(40)),0,'f',2));

                    setAny_Location_Compensate_8_Min(QString("%1").arg(combinationToFloat(resultUnit.value(43),resultUnit.value(42)),0,'f',2));
                    setAny_Location_Compensate_8_Max(QString("%1").arg(combinationToFloat(resultUnit.value(45),resultUnit.value(44)),0,'f',2));
                    setAny_Location_Compensate_8(QString("%1").arg(combinationToFloat(resultUnit.value(47),resultUnit.value(46)),0,'f',2));

                    setAny_Location_Compensate_9_Min(QString("%1").arg(combinationToFloat(resultUnit.value(49),resultUnit.value(48)),0,'f',2));
                    setAny_Location_Compensate_9_Max(QString("%1").arg(combinationToFloat(resultUnit.value(51),resultUnit.value(50)),0,'f',2));
                    setAny_Location_Compensate_9(QString("%1").arg(combinationToFloat(resultUnit.value(53),resultUnit.value(52)),0,'f',2));

                    setAny_Location_Compensate_10_Min(QString("%1").arg(combinationToFloat(resultUnit.value(55),resultUnit.value(54)),0,'f',2));
                    setAny_Location_Compensate_10_Max(QString("%1").arg(combinationToFloat(resultUnit.value(57),resultUnit.value(56)),0,'f',2));
                    setAny_Location_Compensate_10(QString("%1").arg(combinationToFloat(resultUnit.value(59),resultUnit.value(58)),0,'f',2));

                    read_Any_Location_Compensate_Hold_2();

                }
            });
        }
    }
}

void ModbusControl::read_Any_Location_Compensate_Hold_2()
{
    QModbusDataUnit readUnit(QModbusDataUnit::HoldingRegisters,1810,120);

    if(auto* reply = (m_Modbus->sendReadRequest(readUnit,1))){
        if(!reply->isFinished())
        {
            connect(reply,&QModbusReply::finished,this,[reply, this]()
            {
                if(reply->error() == QModbusDevice::NoError)
                {
                    const QModbusDataUnit resultUnit = reply->result();

                    setAny_Location_Compensate_11_Min(QString("%1").arg(combinationToFloat(resultUnit.value(1),resultUnit.value(0)),0,'f',2));
                    setAny_Location_Compensate_11_Max(QString("%1").arg(combinationToFloat(resultUnit.value(3),resultUnit.value(2)),0,'f',2));
                    setAny_Location_Compensate_11(QString("%1").arg(combinationToFloat(resultUnit.value(5),resultUnit.value(4)),0,'f',2));

                    setAny_Location_Compensate_12_Min(QString("%1").arg(combinationToFloat(resultUnit.value(7),resultUnit.value(6)),0,'f',2));
                    setAny_Location_Compensate_12_Max(QString("%1").arg(combinationToFloat(resultUnit.value(9),resultUnit.value(8)),0,'f',2));
                    setAny_Location_Compensate_12(QString("%1").arg(combinationToFloat(resultUnit.value(11),resultUnit.value(10)),0,'f',2));

                    setAny_Location_Compensate_13_Min(QString("%1").arg(combinationToFloat(resultUnit.value(13),resultUnit.value(12)),0,'f',2));
                    setAny_Location_Compensate_13_Max(QString("%1").arg(combinationToFloat(resultUnit.value(15),resultUnit.value(14)),0,'f',2));
                    setAny_Location_Compensate_13(QString("%1").arg(combinationToFloat(resultUnit.value(17),resultUnit.value(16)),0,'f',2));

                    setAny_Location_Compensate_14_Min(QString("%1").arg(combinationToFloat(resultUnit.value(19),resultUnit.value(18)),0,'f',2));
                    setAny_Location_Compensate_14_Max(QString("%1").arg(combinationToFloat(resultUnit.value(21),resultUnit.value(20)),0,'f',2));
                    setAny_Location_Compensate_14(QString("%1").arg(combinationToFloat(resultUnit.value(23),resultUnit.value(22)),0,'f',2));

                    setAny_Location_Compensate_15_Min(QString("%1").arg(combinationToFloat(resultUnit.value(25),resultUnit.value(24)),0,'f',2));
                    setAny_Location_Compensate_15_Max(QString("%1").arg(combinationToFloat(resultUnit.value(27),resultUnit.value(26)),0,'f',2));
                    setAny_Location_Compensate_15(QString("%1").arg(combinationToFloat(resultUnit.value(29),resultUnit.value(28)),0,'f',2));

                    setAny_Location_Compensate_16_Min(QString("%1").arg(combinationToFloat(resultUnit.value(31),resultUnit.value(30)),0,'f',2));
                    setAny_Location_Compensate_16_Max(QString("%1").arg(combinationToFloat(resultUnit.value(33),resultUnit.value(32)),0,'f',2));
                    setAny_Location_Compensate_16(QString("%1").arg(combinationToFloat(resultUnit.value(35),resultUnit.value(34)),0,'f',2));

                    setAny_Location_Compensate_17_Min(QString("%1").arg(combinationToFloat(resultUnit.value(37),resultUnit.value(36)),0,'f',2));
                    setAny_Location_Compensate_17_Max(QString("%1").arg(combinationToFloat(resultUnit.value(39),resultUnit.value(38)),0,'f',2));
                    setAny_Location_Compensate_17(QString("%1").arg(combinationToFloat(resultUnit.value(41),resultUnit.value(40)),0,'f',2));

                    setAny_Location_Compensate_18_Min(QString("%1").arg(combinationToFloat(resultUnit.value(43),resultUnit.value(42)),0,'f',2));
                    setAny_Location_Compensate_18_Max(QString("%1").arg(combinationToFloat(resultUnit.value(45),resultUnit.value(44)),0,'f',2));
                    setAny_Location_Compensate_18(QString("%1").arg(combinationToFloat(resultUnit.value(47),resultUnit.value(46)),0,'f',2));

                    setAny_Location_Compensate_19_Min(QString("%1").arg(combinationToFloat(resultUnit.value(49),resultUnit.value(48)),0,'f',2));
                    setAny_Location_Compensate_19_Max(QString("%1").arg(combinationToFloat(resultUnit.value(51),resultUnit.value(50)),0,'f',2));
                    setAny_Location_Compensate_19(QString("%1").arg(combinationToFloat(resultUnit.value(53),resultUnit.value(52)),0,'f',2));

                    setAny_Location_Compensate_20_Min(QString("%1").arg(combinationToFloat(resultUnit.value(55),resultUnit.value(54)),0,'f',2));
                    setAny_Location_Compensate_20_Max(QString("%1").arg(combinationToFloat(resultUnit.value(57),resultUnit.value(56)),0,'f',2));
                    setAny_Location_Compensate_20(QString("%1").arg(combinationToFloat(resultUnit.value(59),resultUnit.value(58)),0,'f',2));

                }
            });
        }
    }
}

float ModbusControl::combinationToFloat(quint16 highValue, quint16 lowValue)
{
    float result = 0;

    uint32_t midValue = (static_cast<uint32_t>(highValue) << 16) | static_cast<uint32_t>(lowValue);

    result = *(float*)&midValue;

    return result;
}

void ModbusControl::floatResolution(QString setValue, uint16_t *h_value, uint16_t* l_value)
{
    float floatValue = setValue.toFloat();

    // qDebug()<<"当前需要转换的数据为:  "<<test;

    uint8_t midValue [4] = {0};

    memcpy(midValue,&floatValue,sizeof(float));   // 可用

    uint16_t transResult[2] = {0};

    // qDebug()<<"8-高位: " <<midValue[3];
    // qDebug()<<"8-低位: " <<midValue[2];
    // qDebug()<<"8-次低位: " <<midValue[1];
    // qDebug()<<"8-低位: " <<midValue[0];

    transResult[0] = (midValue[3] << 8| midValue[2]);
    transResult[1] = (midValue[1] << 8| midValue[0]);

    // qDebug()<<"16-高位"<<midValue01[0];
    // qDebug()<<"16-低位"<<midValue01[1];

    *h_value = transResult[0];
    *l_value = transResult[1];
}

int ModbusControl::combinationToInteger(quint16 highValue, quint16 lowValue)
{
    qint32 result;
    quint32 midValue = (static_cast<quint32>(highValue) << 16) | static_cast<quint32>(lowValue);
    result = static_cast<qint32>(midValue);
    return result;
}

void ModbusControl::integerResolution(QString setValue, uint16_t *h_value, uint16_t *l_value)
{
    // 将输入字符串转换为32位无符号整数（若需有符号可改为qint32和toInt()）
    quint32 intValue = setValue.toUInt();

    // 用于存储整数的4个字节
    uint8_t midValue[4] = {0};

    // 将32位整数的内存字节复制到数组中（与原函数memcpy逻辑一致）
    memcpy(midValue, &intValue, sizeof(quint32));

    // 用于暂存拆分后的两个16位整数
    uint16_t transResult[2] = {0};

    // 按原函数字节组合逻辑：高16位由第3、2字节组成，低16位由第1、0字节组成
    transResult[0] = (midValue[3] << 8) | midValue[2];  // 高位16位
    transResult[1] = (midValue[1] << 8) | midValue[0];  // 低位16位

    // 赋值给输出指针
    *h_value = transResult[0];
    *l_value = transResult[1];
}


QString ModbusControl::PLC_Version_Code() const
{
    return m_PLC_Version_Code;
}

void ModbusControl::setPLC_Version_Code(const QString &newPLC_Version_Code)
{
    if (m_PLC_Version_Code == newPLC_Version_Code)
        return;
    m_PLC_Version_Code = newPLC_Version_Code;
    emit PLC_Version_CodeChanged();
}

bool ModbusControl::PLC_ConnectState() const
{
    return m_PLC_ConnectState;
}

void ModbusControl::setPLC_ConnectState(bool newPLC_ConnectState)
{
    if (m_PLC_ConnectState == newPLC_ConnectState)
        return;
    m_PLC_ConnectState = newPLC_ConnectState;
    emit PLC_ConnectStateChanged();
}

QString ModbusControl::Current_Location() const
{
    return m_Current_Location;
}

void ModbusControl::setCurrent_Location(const QString &newCurrent_Location)
{
    if (m_Current_Location == newCurrent_Location)
        return;
    m_Current_Location = newCurrent_Location;
    emit Current_LocationChanged();
}

QString ModbusControl::OriginValue() const
{
    return m_OriginValue;
}

void ModbusControl::setOriginValue(const QString &newOriginValue)
{
    if (m_OriginValue == newOriginValue)
        return;
    m_OriginValue = newOriginValue;
    emit OriginValueChanged();
}

QString ModbusControl::MaterialLength_NormalProcess() const
{
    return m_MaterialLength_NormalProcess;
}

void ModbusControl::setMaterialLength_NormalProcess(const QString &newMaterialLength_NormalProcess)
{
    if (m_MaterialLength_NormalProcess == newMaterialLength_NormalProcess)
        return;
    m_MaterialLength_NormalProcess = newMaterialLength_NormalProcess;
    emit MaterialLength_NormalProcessChanged();
}

QString ModbusControl::MaterialHeight_NormalProcess() const
{
    return m_MaterialHeight_NormalProcess;
}

void ModbusControl::setMaterialHeight_NormalProcess(const QString &newMaterialHeight_NormalProcess)
{
    if (m_MaterialHeight_NormalProcess == newMaterialHeight_NormalProcess)
        return;
    m_MaterialHeight_NormalProcess = newMaterialHeight_NormalProcess;
    emit MaterialHeight_NormalProcessChanged();
}

int ModbusControl::SawsMode() const
{
    return m_SawsMode;
}

void ModbusControl::setSawsMode(int newSawsMode)
{
    if (m_SawsMode == newSawsMode)
        return;
    m_SawsMode = newSawsMode;
    emit SawsModeChanged();
}

QString ModbusControl::CutSegments_NormalProcess() const
{
    return m_CutSegments_NormalProcess;
}

void ModbusControl::setCutSegments_NormalProcess(const QString &newCutSegments_NormalProcess)
{
    if (m_CutSegments_NormalProcess == newCutSegments_NormalProcess)
        return;
    m_CutSegments_NormalProcess = newCutSegments_NormalProcess;
    emit CutSegments_NormalProcessChanged();
}

QString ModbusControl::CurrentCutSegments_NormalProcess() const
{
    return m_CurrentCutSegments_NormalProcess;
}

void ModbusControl::setCurrentCutSegments_NormalProcess(const QString &newCurrentCutSegments_NormalProcess)
{
    if (m_CurrentCutSegments_NormalProcess == newCurrentCutSegments_NormalProcess)
        return;
    m_CurrentCutSegments_NormalProcess = newCurrentCutSegments_NormalProcess;
    emit CurrentCutSegments_NormalProcessChanged();
}

QString ModbusControl::MaterialHeightObserveValue() const
{
    return m_MaterialHeightObserveValue;
}

void ModbusControl::setMaterialHeightObserveValue(const QString &newMaterialHeightObserveValue)
{
    if (m_MaterialHeightObserveValue == newMaterialHeightObserveValue)
        return;
    m_MaterialHeightObserveValue = newMaterialHeightObserveValue;
    emit MaterialHeightObserveValueChanged();
}

QString ModbusControl::Manual_Location_Speed() const
{
    return m_Manual_Location_Speed;
}

void ModbusControl::setManual_Location_Speed(const QString &newManual_Location_Speed)
{
    if (m_Manual_Location_Speed == newManual_Location_Speed)
        return;
    m_Manual_Location_Speed = newManual_Location_Speed;
    emit Manual_Location_SpeedChanged();
}

QString ModbusControl::LeftSaws_OutTime() const
{
    return m_LeftSaws_OutTime;
}

void ModbusControl::setLeftSaws_OutTime(const QString &newLeftSaws_OutTime)
{
    if (m_LeftSaws_OutTime == newLeftSaws_OutTime)
        return;
    m_LeftSaws_OutTime = newLeftSaws_OutTime;
    emit LeftSaws_OutTimeChanged();
}

QString ModbusControl::LeftSaws_45_Compensate() const
{
    return m_LeftSaws_45_Compensate;
}

void ModbusControl::setLeftSaws_45_Compensate(const QString &newLeftSaws_45_Compensate)
{
    if (m_LeftSaws_45_Compensate == newLeftSaws_45_Compensate)
        return;
    m_LeftSaws_45_Compensate = newLeftSaws_45_Compensate;
    emit LeftSaws_45_CompensateChanged();
}

QString ModbusControl::Material_Height_Observe_Time() const
{
    return m_Material_Height_Observe_Time;
}

void ModbusControl::setMaterial_Height_Observe_Time(const QString &newMaterial_Height_Observe_Time)
{
    if (m_Material_Height_Observe_Time == newMaterial_Height_Observe_Time)
        return;
    m_Material_Height_Observe_Time = newMaterial_Height_Observe_Time;
    emit Material_Height_Observe_TimeChanged();
}

QString ModbusControl::Material_Height_Ruler_Scale() const
{
    return m_Material_Height_Ruler_Scale;
}

void ModbusControl::setMaterial_Height_Ruler_Scale(const QString &newMaterial_Height_Ruler_Scale)
{
    if (m_Material_Height_Ruler_Scale == newMaterial_Height_Ruler_Scale)
        return;
    m_Material_Height_Ruler_Scale = newMaterial_Height_Ruler_Scale;
    emit Material_Height_Ruler_ScaleChanged();
}

QString ModbusControl::Material_Height_Observe_Base() const
{
    return m_Material_Height_Observe_Base;
}

void ModbusControl::setMaterial_Height_Observe_Base(const QString &newMaterial_Height_Observe_Base)
{
    if (m_Material_Height_Observe_Base == newMaterial_Height_Observe_Base)
        return;
    m_Material_Height_Observe_Base = newMaterial_Height_Observe_Base;
    emit Material_Height_Observe_BaseChanged();
}

QString ModbusControl::ImpactActiveTime() const
{
    return m_ImpactActiveTime;
}

void ModbusControl::setImpactActiveTime(const QString &newImpactActiveTime)
{
    if (m_ImpactActiveTime == newImpactActiveTime)
        return;
    m_ImpactActiveTime = newImpactActiveTime;
    emit ImpactActiveTimeChanged();
}

QString ModbusControl::Auto_Location_Speed() const
{
    return m_Auto_Location_Speed;
}

void ModbusControl::setAuto_Location_Speed(const QString &newAuto_Location_Speed)
{
    if (m_Auto_Location_Speed == newAuto_Location_Speed)
        return;
    m_Auto_Location_Speed = newAuto_Location_Speed;
    emit Auto_Location_SpeedChanged();
}

QString ModbusControl::RightSaws_OutTime() const
{
    return m_RightSaws_OutTime;
}

void ModbusControl::setRightSaws_OutTime(const QString &newRightSaws_OutTime)
{
    if (m_RightSaws_OutTime == newRightSaws_OutTime)
        return;
    m_RightSaws_OutTime = newRightSaws_OutTime;
    emit RightSaws_OutTimeChanged();
}

QString ModbusControl::RightSaws_45_Compensate() const
{
    return m_RightSaws_45_Compensate;
}

void ModbusControl::setRightSaws_45_Compensate(const QString &newRightSaws_45_Compensate)
{
    if (m_RightSaws_45_Compensate == newRightSaws_45_Compensate)
        return;
    m_RightSaws_45_Compensate = newRightSaws_45_Compensate;
    emit RightSaws_45_CompensateChanged();
}

QString ModbusControl::Left_Right_Blow_Time() const
{
    return m_Left_Right_Blow_Time;
}

void ModbusControl::setLeft_Right_Blow_Time(const QString &newLeft_Right_Blow_Time)
{
    if (m_Left_Right_Blow_Time == newLeft_Right_Blow_Time)
        return;
    m_Left_Right_Blow_Time = newLeft_Right_Blow_Time;
    emit Left_Right_Blow_TimeChanged();
}

QString ModbusControl::Safe_Distance_45() const
{
    return m_Safe_Distance_45;
}

void ModbusControl::setSafe_Distance_45(const QString &newSafe_Distance_45)
{
    if (m_Safe_Distance_45 == newSafe_Distance_45)
        return;
    m_Safe_Distance_45 = newSafe_Distance_45;
    emit Safe_Distance_45Changed();
}

QString ModbusControl::Electric_Valve_Power_Off_Time() const
{
    return m_Electric_Valve_Power_Off_Time;
}

void ModbusControl::setElectric_Valve_Power_Off_Time(const QString &newElectric_Valve_Power_Off_Time)
{
    if (m_Electric_Valve_Power_Off_Time == newElectric_Valve_Power_Off_Time)
        return;
    m_Electric_Valve_Power_Off_Time = newElectric_Valve_Power_Off_Time;
    emit Electric_Valve_Power_Off_TimeChanged();
}

QString ModbusControl::Per_Rotation_Pulse() const
{
    return m_Per_Rotation_Pulse;
}

void ModbusControl::setPer_Rotation_Pulse(const QString &newPer_Rotation_Pulse)
{
    if (m_Per_Rotation_Pulse == newPer_Rotation_Pulse)
        return;
    m_Per_Rotation_Pulse = newPer_Rotation_Pulse;
    emit Per_Rotation_PulseChanged();
}

QString ModbusControl::Max_Cut_Length() const
{
    return m_Max_Cut_Length;
}

void ModbusControl::setMax_Cut_Length(const QString &newMax_Cut_Length)
{
    if (m_Max_Cut_Length == newMax_Cut_Length)
        return;
    m_Max_Cut_Length = newMax_Cut_Length;
    emit Max_Cut_LengthChanged();
}

QString ModbusControl::Find_Zero_High_Speed() const
{
    return m_Find_Zero_High_Speed;
}

void ModbusControl::setFind_Zero_High_Speed(const QString &newFind_Zero_High_Speed)
{
    if (m_Find_Zero_High_Speed == newFind_Zero_High_Speed)
        return;
    m_Find_Zero_High_Speed = newFind_Zero_High_Speed;
    emit Find_Zero_High_SpeedChanged();
}

QString ModbusControl::Acc_Dec_Time() const
{
    return m_Acc_Dec_Time;
}

void ModbusControl::setAcc_Dec_Time(const QString &newAcc_Dec_Time)
{
    if (m_Acc_Dec_Time == newAcc_Dec_Time)
        return;
    m_Acc_Dec_Time = newAcc_Dec_Time;
    emit Acc_Dec_TimeChanged();
}

QString ModbusControl::Brake_Open_Time() const
{
    return m_Brake_Open_Time;
}

void ModbusControl::setBrake_Open_Time(const QString &newBrake_Open_Time)
{
    if (m_Brake_Open_Time == newBrake_Open_Time)
        return;
    m_Brake_Open_Time = newBrake_Open_Time;
    emit Brake_Open_TimeChanged();
}

QString ModbusControl::Per_Rotation_Distance() const
{
    return m_Per_Rotation_Distance;
}

void ModbusControl::setPer_Rotation_Distance(const QString &newPer_Rotation_Distance)
{
    if (m_Per_Rotation_Distance == newPer_Rotation_Distance)
        return;
    m_Per_Rotation_Distance = newPer_Rotation_Distance;
    emit Per_Rotation_DistanceChanged();
}

QString ModbusControl::Reverse_Soft_Limit() const
{
    return m_Reverse_Soft_Limit;
}

void ModbusControl::setReverse_Soft_Limit(const QString &newReverse_Soft_Limit)
{
    if (m_Reverse_Soft_Limit == newReverse_Soft_Limit)
        return;
    m_Reverse_Soft_Limit = newReverse_Soft_Limit;
    emit Reverse_Soft_LimitChanged();
}

QString ModbusControl::Find_Zero_Low_Speed() const
{
    return m_Find_Zero_Low_Speed;
}

void ModbusControl::setFind_Zero_Low_Speed(const QString &newFind_Zero_Low_Speed)
{
    if (m_Find_Zero_Low_Speed == newFind_Zero_Low_Speed)
        return;
    m_Find_Zero_Low_Speed = newFind_Zero_Low_Speed;
    emit Find_Zero_Low_SpeedChanged();
}

QString ModbusControl::Brake_Close_Delay() const
{
    return m_Brake_Close_Delay;
}

void ModbusControl::setBrake_Close_Delay(const QString &newBrake_Close_Delay)
{
    if (m_Brake_Close_Delay == newBrake_Close_Delay)
        return;
    m_Brake_Close_Delay = newBrake_Close_Delay;
    emit Brake_Close_DelayChanged();
}

QString ModbusControl::Core_Number() const
{
    return m_Core_Number;
}

void ModbusControl::setCore_Number(const QString &newCore_Number)
{
    if (m_Core_Number == newCore_Number)
        return;
    m_Core_Number = newCore_Number;
    emit Core_NumberChanged();
}

QString ModbusControl::Bracket_Safe_Distance() const
{
    return m_Bracket_Safe_Distance;
}

void ModbusControl::setBracket_Safe_Distance(const QString &newBracket_Safe_Distance)
{
    if (m_Bracket_Safe_Distance == newBracket_Safe_Distance)
        return;
    m_Bracket_Safe_Distance = newBracket_Safe_Distance;
    emit Bracket_Safe_DistanceChanged();
}

QString ModbusControl::Bracket_Front_Location() const
{
    return m_Bracket_Front_Location;
}

void ModbusControl::setBracket_Front_Location(const QString &newBracket_Front_Location)
{
    if (m_Bracket_Front_Location == newBracket_Front_Location)
        return;
    m_Bracket_Front_Location = newBracket_Front_Location;
    emit Bracket_Front_LocationChanged();
}

QString ModbusControl::Bracket_Mid_Min() const
{
    return m_Bracket_Mid_Min;
}

void ModbusControl::setBracket_Mid_Min(const QString &newBracket_Mid_Min)
{
    if (m_Bracket_Mid_Min == newBracket_Mid_Min)
        return;
    m_Bracket_Mid_Min = newBracket_Mid_Min;
    emit Bracket_Mid_MinChanged();
}

QString ModbusControl::Bracket_Mid_Max() const
{
    return m_Bracket_Mid_Max;
}

void ModbusControl::setBracket_Mid_Max(const QString &newBracket_Mid_Max)
{
    if (m_Bracket_Mid_Max == newBracket_Mid_Max)
        return;
    m_Bracket_Mid_Max = newBracket_Mid_Max;
    emit Bracket_Mid_MaxChanged();
}

QString ModbusControl::Bracket_Back_Location() const
{
    return m_Bracket_Back_Location;
}

void ModbusControl::setBracket_Back_Location(const QString &newBracket_Back_Location)
{
    if (m_Bracket_Back_Location == newBracket_Back_Location)
        return;
    m_Bracket_Back_Location = newBracket_Back_Location;
    emit Bracket_Back_LocationChanged();
}

QString ModbusControl::Location_Compensate_1() const
{
    return m_Location_Compensate_1;
}

void ModbusControl::setLocation_Compensate_1(const QString &newLocation_Compensate_1)
{
    if (m_Location_Compensate_1 == newLocation_Compensate_1)
        return;
    m_Location_Compensate_1 = newLocation_Compensate_1;
    emit Location_Compensate_1Changed();
}

QString ModbusControl::Location_Compensate_2() const
{
    return m_Location_Compensate_2;
}

void ModbusControl::setLocation_Compensate_2(const QString &newLocation_Compensate_2)
{
    if (m_Location_Compensate_2 == newLocation_Compensate_2)
        return;
    m_Location_Compensate_2 = newLocation_Compensate_2;
    emit Location_Compensate_2Changed();
}

QString ModbusControl::Location_Compensate_3() const
{
    return m_Location_Compensate_3;
}

void ModbusControl::setLocation_Compensate_3(const QString &newLocation_Compensate_3)
{
    if (m_Location_Compensate_3 == newLocation_Compensate_3)
        return;
    m_Location_Compensate_3 = newLocation_Compensate_3;
    emit Location_Compensate_3Changed();
}

QString ModbusControl::Location_Compensate_4() const
{
    return m_Location_Compensate_4;
}

void ModbusControl::setLocation_Compensate_4(const QString &newLocation_Compensate_4)
{
    if (m_Location_Compensate_4 == newLocation_Compensate_4)
        return;
    m_Location_Compensate_4 = newLocation_Compensate_4;
    emit Location_Compensate_4Changed();
}

QString ModbusControl::Location_Compensate_5() const
{
    return m_Location_Compensate_5;
}

void ModbusControl::setLocation_Compensate_5(const QString &newLocation_Compensate_5)
{
    if (m_Location_Compensate_5 == newLocation_Compensate_5)
        return;
    m_Location_Compensate_5 = newLocation_Compensate_5;
    emit Location_Compensate_5Changed();
}

QString ModbusControl::Location_Compensate_6() const
{
    return m_Location_Compensate_6;
}

void ModbusControl::setLocation_Compensate_6(const QString &newLocation_Compensate_6)
{
    if (m_Location_Compensate_6 == newLocation_Compensate_6)
        return;
    m_Location_Compensate_6 = newLocation_Compensate_6;
    emit Location_Compensate_6Changed();
}

QString ModbusControl::Location_Compensate_7() const
{
    return m_Location_Compensate_7;
}

void ModbusControl::setLocation_Compensate_7(const QString &newLocation_Compensate_7)
{
    if (m_Location_Compensate_7 == newLocation_Compensate_7)
        return;
    m_Location_Compensate_7 = newLocation_Compensate_7;
    emit Location_Compensate_7Changed();
}

QString ModbusControl::Location_Compensate_8() const
{
    return m_Location_Compensate_8;
}

void ModbusControl::setLocation_Compensate_8(const QString &newLocation_Compensate_8)
{
    if (m_Location_Compensate_8 == newLocation_Compensate_8)
        return;
    m_Location_Compensate_8 = newLocation_Compensate_8;
    emit Location_Compensate_8Changed();
}

QString ModbusControl::Location_Compensate_9() const
{
    return m_Location_Compensate_9;
}

void ModbusControl::setLocation_Compensate_9(const QString &newLocation_Compensate_9)
{
    if (m_Location_Compensate_9 == newLocation_Compensate_9)
        return;
    m_Location_Compensate_9 = newLocation_Compensate_9;
    emit Location_Compensate_9Changed();
}

QString ModbusControl::Location_Compensate_10() const
{
    return m_Location_Compensate_10;
}

void ModbusControl::setLocation_Compensate_10(const QString &newLocation_Compensate_10)
{
    if (m_Location_Compensate_10 == newLocation_Compensate_10)
        return;
    m_Location_Compensate_10 = newLocation_Compensate_10;
    emit Location_Compensate_10Changed();
}

QString ModbusControl::Location_Compensate_11() const
{
    return m_Location_Compensate_11;
}

void ModbusControl::setLocation_Compensate_11(const QString &newLocation_Compensate_11)
{
    if (m_Location_Compensate_11 == newLocation_Compensate_11)
        return;
    m_Location_Compensate_11 = newLocation_Compensate_11;
    emit Location_Compensate_11Changed();
}

QString ModbusControl::Location_Compensate_12() const
{
    return m_Location_Compensate_12;
}

void ModbusControl::setLocation_Compensate_12(const QString &newLocation_Compensate_12)
{
    if (m_Location_Compensate_12 == newLocation_Compensate_12)
        return;
    m_Location_Compensate_12 = newLocation_Compensate_12;
    emit Location_Compensate_12Changed();
}

QString ModbusControl::Location_Compensate_13() const
{
    return m_Location_Compensate_13;
}

void ModbusControl::setLocation_Compensate_13(const QString &newLocation_Compensate_13)
{
    if (m_Location_Compensate_13 == newLocation_Compensate_13)
        return;
    m_Location_Compensate_13 = newLocation_Compensate_13;
    emit Location_Compensate_13Changed();
}

QString ModbusControl::Location_Compensate_14() const
{
    return m_Location_Compensate_14;
}

void ModbusControl::setLocation_Compensate_14(const QString &newLocation_Compensate_14)
{
    if (m_Location_Compensate_14 == newLocation_Compensate_14)
        return;
    m_Location_Compensate_14 = newLocation_Compensate_14;
    emit Location_Compensate_14Changed();
}

QString ModbusControl::Location_Compensate_15() const
{
    return m_Location_Compensate_15;
}

void ModbusControl::setLocation_Compensate_15(const QString &newLocation_Compensate_15)
{
    if (m_Location_Compensate_15 == newLocation_Compensate_15)
        return;
    m_Location_Compensate_15 = newLocation_Compensate_15;
    emit Location_Compensate_15Changed();
}

QString ModbusControl::Location_Compensate_16() const
{
    return m_Location_Compensate_16;
}

void ModbusControl::setLocation_Compensate_16(const QString &newLocation_Compensate_16)
{
    if (m_Location_Compensate_16 == newLocation_Compensate_16)
        return;
    m_Location_Compensate_16 = newLocation_Compensate_16;
    emit Location_Compensate_16Changed();
}

QString ModbusControl::Location_Compensate_17() const
{
    return m_Location_Compensate_17;
}

void ModbusControl::setLocation_Compensate_17(const QString &newLocation_Compensate_17)
{
    if (m_Location_Compensate_17 == newLocation_Compensate_17)
        return;
    m_Location_Compensate_17 = newLocation_Compensate_17;
    emit Location_Compensate_17Changed();
}

QString ModbusControl::Location_Compensate_18() const
{
    return m_Location_Compensate_18;
}

void ModbusControl::setLocation_Compensate_18(const QString &newLocation_Compensate_18)
{
    if (m_Location_Compensate_18 == newLocation_Compensate_18)
        return;
    m_Location_Compensate_18 = newLocation_Compensate_18;
    emit Location_Compensate_18Changed();
}

QString ModbusControl::Location_Compensate_19() const
{
    return m_Location_Compensate_19;
}

void ModbusControl::setLocation_Compensate_19(const QString &newLocation_Compensate_19)
{
    if (m_Location_Compensate_19 == newLocation_Compensate_19)
        return;
    m_Location_Compensate_19 = newLocation_Compensate_19;
    emit Location_Compensate_19Changed();
}

QString ModbusControl::Location_Compensate_20() const
{
    return m_Location_Compensate_20;
}

void ModbusControl::setLocation_Compensate_20(const QString &newLocation_Compensate_20)
{
    if (m_Location_Compensate_20 == newLocation_Compensate_20)
        return;
    m_Location_Compensate_20 = newLocation_Compensate_20;
    emit Location_Compensate_20Changed();
}

QString ModbusControl::Location_Compensate_21() const
{
    return m_Location_Compensate_21;
}

void ModbusControl::setLocation_Compensate_21(const QString &newLocation_Compensate_21)
{
    if (m_Location_Compensate_21 == newLocation_Compensate_21)
        return;
    m_Location_Compensate_21 = newLocation_Compensate_21;
    emit Location_Compensate_21Changed();
}

QString ModbusControl::Location_Compensate_22() const
{
    return m_Location_Compensate_22;
}

void ModbusControl::setLocation_Compensate_22(const QString &newLocation_Compensate_22)
{
    if (m_Location_Compensate_22 == newLocation_Compensate_22)
        return;
    m_Location_Compensate_22 = newLocation_Compensate_22;
    emit Location_Compensate_22Changed();
}

QString ModbusControl::Location_Compensate_23() const
{
    return m_Location_Compensate_23;
}

void ModbusControl::setLocation_Compensate_23(const QString &newLocation_Compensate_23)
{
    if (m_Location_Compensate_23 == newLocation_Compensate_23)
        return;
    m_Location_Compensate_23 = newLocation_Compensate_23;
    emit Location_Compensate_23Changed();
}

QString ModbusControl::Location_Compensate_24() const
{
    return m_Location_Compensate_24;
}

void ModbusControl::setLocation_Compensate_24(const QString &newLocation_Compensate_24)
{
    if (m_Location_Compensate_24 == newLocation_Compensate_24)
        return;
    m_Location_Compensate_24 = newLocation_Compensate_24;
    emit Location_Compensate_24Changed();
}

QString ModbusControl::Location_Compensate_25() const
{
    return m_Location_Compensate_25;
}

void ModbusControl::setLocation_Compensate_25(const QString &newLocation_Compensate_25)
{
    if (m_Location_Compensate_25 == newLocation_Compensate_25)
        return;
    m_Location_Compensate_25 = newLocation_Compensate_25;
    emit Location_Compensate_25Changed();
}

QString ModbusControl::Location_Compensate_26() const
{
    return m_Location_Compensate_26;
}

void ModbusControl::setLocation_Compensate_26(const QString &newLocation_Compensate_26)
{
    if (m_Location_Compensate_26 == newLocation_Compensate_26)
        return;
    m_Location_Compensate_26 = newLocation_Compensate_26;
    emit Location_Compensate_26Changed();
}

QString ModbusControl::Location_Compensate_27() const
{
    return m_Location_Compensate_27;
}

void ModbusControl::setLocation_Compensate_27(const QString &newLocation_Compensate_27)
{
    if (m_Location_Compensate_27 == newLocation_Compensate_27)
        return;
    m_Location_Compensate_27 = newLocation_Compensate_27;
    emit Location_Compensate_27Changed();
}

QString ModbusControl::Location_Compensate_28() const
{
    return m_Location_Compensate_28;
}

void ModbusControl::setLocation_Compensate_28(const QString &newLocation_Compensate_28)
{
    if (m_Location_Compensate_28 == newLocation_Compensate_28)
        return;
    m_Location_Compensate_28 = newLocation_Compensate_28;
    emit Location_Compensate_28Changed();
}

QString ModbusControl::Location_Compensate_29() const
{
    return m_Location_Compensate_29;
}

void ModbusControl::setLocation_Compensate_29(const QString &newLocation_Compensate_29)
{
    if (m_Location_Compensate_29 == newLocation_Compensate_29)
        return;
    m_Location_Compensate_29 = newLocation_Compensate_29;
    emit Location_Compensate_29Changed();
}

QString ModbusControl::Swing_Corner_Compensate_Min() const
{
    return m_Swing_Corner_Compensate_Min;
}

void ModbusControl::setSwing_Corner_Compensate_Min(const QString &newSwing_Corner_Compensate_Min)
{
    if (m_Swing_Corner_Compensate_Min == newSwing_Corner_Compensate_Min)
        return;
    m_Swing_Corner_Compensate_Min = newSwing_Corner_Compensate_Min;
    emit Swing_Corner_Compensate_MinChanged();
}

QString ModbusControl::Swing_Corner_Compensate_Max() const
{
    return m_Swing_Corner_Compensate_Max;
}

void ModbusControl::setSwing_Corner_Compensate_Max(const QString &newSwing_Corner_Compensate_Max)
{
    if (m_Swing_Corner_Compensate_Max == newSwing_Corner_Compensate_Max)
        return;
    m_Swing_Corner_Compensate_Max = newSwing_Corner_Compensate_Max;
    emit Swing_Corner_Compensate_MaxChanged();
}

QString ModbusControl::Swing_Corner_Compensate() const
{
    return m_Swing_Corner_Compensate;
}

void ModbusControl::setSwing_Corner_Compensate(const QString &newSwing_Corner_Compensate)
{
    if (m_Swing_Corner_Compensate == newSwing_Corner_Compensate)
        return;
    m_Swing_Corner_Compensate = newSwing_Corner_Compensate;
    emit Swing_Corner_CompensateChanged();
}

QString ModbusControl::Any_Location_Compensate_1_Min() const
{
    return m_Any_Location_Compensate_1_Min;
}

void ModbusControl::setAny_Location_Compensate_1_Min(const QString &newAny_Location_Compensate_1_Min)
{
    if (m_Any_Location_Compensate_1_Min == newAny_Location_Compensate_1_Min)
        return;
    m_Any_Location_Compensate_1_Min = newAny_Location_Compensate_1_Min;
    emit Any_Location_Compensate_1_MinChanged();
}

QString ModbusControl::Any_Location_Compensate_1_Max() const
{
    return m_Any_Location_Compensate_1_Max;
}

void ModbusControl::setAny_Location_Compensate_1_Max(const QString &newAny_Location_Compensate_1_Max)
{
    if (m_Any_Location_Compensate_1_Max == newAny_Location_Compensate_1_Max)
        return;
    m_Any_Location_Compensate_1_Max = newAny_Location_Compensate_1_Max;
    emit Any_Location_Compensate_1_MaxChanged();
}

QString ModbusControl::Any_Location_Compensate_1() const
{
    return m_Any_Location_Compensate_1;
}

void ModbusControl::setAny_Location_Compensate_1(const QString &newAny_Location_Compensate_1)
{
    if (m_Any_Location_Compensate_1 == newAny_Location_Compensate_1)
        return;
    m_Any_Location_Compensate_1 = newAny_Location_Compensate_1;
    emit Any_Location_Compensate_1Changed();
}

QString ModbusControl::Any_Location_Compensate_2_Min() const
{
    return m_Any_Location_Compensate_2_Min;
}

void ModbusControl::setAny_Location_Compensate_2_Min(const QString &newAny_Location_Compensate_2_Min)
{
    if (m_Any_Location_Compensate_2_Min == newAny_Location_Compensate_2_Min)
        return;
    m_Any_Location_Compensate_2_Min = newAny_Location_Compensate_2_Min;
    emit Any_Location_Compensate_2_MinChanged();
}

QString ModbusControl::Any_Location_Compensate_2_Max() const
{
    return m_Any_Location_Compensate_2_Max;
}

void ModbusControl::setAny_Location_Compensate_2_Max(const QString &newAny_Location_Compensate_2_Max)
{
    if (m_Any_Location_Compensate_2_Max == newAny_Location_Compensate_2_Max)
        return;
    m_Any_Location_Compensate_2_Max = newAny_Location_Compensate_2_Max;
    emit Any_Location_Compensate_2_MaxChanged();
}

QString ModbusControl::Any_Location_Compensate_2() const
{
    return m_Any_Location_Compensate_2;
}

void ModbusControl::setAny_Location_Compensate_2(const QString &newAny_Location_Compensate_2)
{
    if (m_Any_Location_Compensate_2 == newAny_Location_Compensate_2)
        return;
    m_Any_Location_Compensate_2 = newAny_Location_Compensate_2;
    emit Any_Location_Compensate_2Changed();
}

QString ModbusControl::Any_Location_Compensate_3_Min() const
{
    return m_Any_Location_Compensate_3_Min;
}

void ModbusControl::setAny_Location_Compensate_3_Min(const QString &newAny_Location_Compensate_3_Min)
{
    if (m_Any_Location_Compensate_3_Min == newAny_Location_Compensate_3_Min)
        return;
    m_Any_Location_Compensate_3_Min = newAny_Location_Compensate_3_Min;
    emit Any_Location_Compensate_3_MinChanged();
}

QString ModbusControl::Any_Location_Compensate_3_Max() const
{
    return m_Any_Location_Compensate_3_Max;
}

void ModbusControl::setAny_Location_Compensate_3_Max(const QString &newAny_Location_Compensate_3_Max)
{
    if (m_Any_Location_Compensate_3_Max == newAny_Location_Compensate_3_Max)
        return;
    m_Any_Location_Compensate_3_Max = newAny_Location_Compensate_3_Max;
    emit Any_Location_Compensate_3_MaxChanged();
}

QString ModbusControl::Any_Location_Compensate_3() const
{
    return m_Any_Location_Compensate_3;
}

void ModbusControl::setAny_Location_Compensate_3(const QString &newAny_Location_Compensate_3)
{
    if (m_Any_Location_Compensate_3 == newAny_Location_Compensate_3)
        return;
    m_Any_Location_Compensate_3 = newAny_Location_Compensate_3;
    emit Any_Location_Compensate_3Changed();
}

QString ModbusControl::Any_Location_Compensate_4_Min() const
{
    return m_Any_Location_Compensate_4_Min;
}

void ModbusControl::setAny_Location_Compensate_4_Min(const QString &newAny_Location_Compensate_4_Min)
{
    if (m_Any_Location_Compensate_4_Min == newAny_Location_Compensate_4_Min)
        return;
    m_Any_Location_Compensate_4_Min = newAny_Location_Compensate_4_Min;
    emit Any_Location_Compensate_4_MinChanged();
}

QString ModbusControl::Any_Location_Compensate_4_Max() const
{
    return m_Any_Location_Compensate_4_Max;
}

void ModbusControl::setAny_Location_Compensate_4_Max(const QString &newAny_Location_Compensate_4_Max)
{
    if (m_Any_Location_Compensate_4_Max == newAny_Location_Compensate_4_Max)
        return;
    m_Any_Location_Compensate_4_Max = newAny_Location_Compensate_4_Max;
    emit Any_Location_Compensate_4_MaxChanged();
}

QString ModbusControl::Any_Location_Compensate_4() const
{
    return m_Any_Location_Compensate_4;
}

void ModbusControl::setAny_Location_Compensate_4(const QString &newAny_Location_Compensate_4)
{
    if (m_Any_Location_Compensate_4 == newAny_Location_Compensate_4)
        return;
    m_Any_Location_Compensate_4 = newAny_Location_Compensate_4;
    emit Any_Location_Compensate_4Changed();
}

QString ModbusControl::Any_Location_Compensate_5_Min() const
{
    return m_Any_Location_Compensate_5_Min;
}

void ModbusControl::setAny_Location_Compensate_5_Min(const QString &newAny_Location_Compensate_5_Min)
{
    if (m_Any_Location_Compensate_5_Min == newAny_Location_Compensate_5_Min)
        return;
    m_Any_Location_Compensate_5_Min = newAny_Location_Compensate_5_Min;
    emit Any_Location_Compensate_5_MinChanged();
}

QString ModbusControl::Any_Location_Compensate_5_Max() const
{
    return m_Any_Location_Compensate_5_Max;
}

void ModbusControl::setAny_Location_Compensate_5_Max(const QString &newAny_Location_Compensate_5_Max)
{
    if (m_Any_Location_Compensate_5_Max == newAny_Location_Compensate_5_Max)
        return;
    m_Any_Location_Compensate_5_Max = newAny_Location_Compensate_5_Max;
    emit Any_Location_Compensate_5_MaxChanged();
}

QString ModbusControl::Any_Location_Compensate_5() const
{
    return m_Any_Location_Compensate_5;
}

void ModbusControl::setAny_Location_Compensate_5(const QString &newAny_Location_Compensate_5)
{
    if (m_Any_Location_Compensate_5 == newAny_Location_Compensate_5)
        return;
    m_Any_Location_Compensate_5 = newAny_Location_Compensate_5;
    emit Any_Location_Compensate_5Changed();
}

QString ModbusControl::Any_Location_Compensate_6_Min() const
{
    return m_Any_Location_Compensate_6_Min;
}

void ModbusControl::setAny_Location_Compensate_6_Min(const QString &newAny_Location_Compensate_6_Min)
{
    if (m_Any_Location_Compensate_6_Min == newAny_Location_Compensate_6_Min)
        return;
    m_Any_Location_Compensate_6_Min = newAny_Location_Compensate_6_Min;
    emit Any_Location_Compensate_6_MinChanged();
}

QString ModbusControl::Any_Location_Compensate_6_Max() const
{
    return m_Any_Location_Compensate_6_Max;
}

void ModbusControl::setAny_Location_Compensate_6_Max(const QString &newAny_Location_Compensate_6_Max)
{
    if (m_Any_Location_Compensate_6_Max == newAny_Location_Compensate_6_Max)
        return;
    m_Any_Location_Compensate_6_Max = newAny_Location_Compensate_6_Max;
    emit Any_Location_Compensate_6_MaxChanged();
}

QString ModbusControl::Any_Location_Compensate_6() const
{
    return m_Any_Location_Compensate_6;
}

void ModbusControl::setAny_Location_Compensate_6(const QString &newAny_Location_Compensate_6)
{
    if (m_Any_Location_Compensate_6 == newAny_Location_Compensate_6)
        return;
    m_Any_Location_Compensate_6 = newAny_Location_Compensate_6;
    emit Any_Location_Compensate_6Changed();
}

QString ModbusControl::Any_Location_Compensate_7_Min() const
{
    return m_Any_Location_Compensate_7_Min;
}

void ModbusControl::setAny_Location_Compensate_7_Min(const QString &newAny_Location_Compensate_7_Min)
{
    if (m_Any_Location_Compensate_7_Min == newAny_Location_Compensate_7_Min)
        return;
    m_Any_Location_Compensate_7_Min = newAny_Location_Compensate_7_Min;
    emit Any_Location_Compensate_7_MinChanged();
}

QString ModbusControl::Any_Location_Compensate_7_Max() const
{
    return m_Any_Location_Compensate_7_Max;
}

void ModbusControl::setAny_Location_Compensate_7_Max(const QString &newAny_Location_Compensate_7_Max)
{
    if (m_Any_Location_Compensate_7_Max == newAny_Location_Compensate_7_Max)
        return;
    m_Any_Location_Compensate_7_Max = newAny_Location_Compensate_7_Max;
    emit Any_Location_Compensate_7_MaxChanged();
}

QString ModbusControl::Any_Location_Compensate_7() const
{
    return m_Any_Location_Compensate_7;
}

void ModbusControl::setAny_Location_Compensate_7(const QString &newAny_Location_Compensate_7)
{
    if (m_Any_Location_Compensate_7 == newAny_Location_Compensate_7)
        return;
    m_Any_Location_Compensate_7 = newAny_Location_Compensate_7;
    emit Any_Location_Compensate_7Changed();
}

QString ModbusControl::Any_Location_Compensate_8_Min() const
{
    return m_Any_Location_Compensate_8_Min;
}

void ModbusControl::setAny_Location_Compensate_8_Min(const QString &newAny_Location_Compensate_8_Min)
{
    if (m_Any_Location_Compensate_8_Min == newAny_Location_Compensate_8_Min)
        return;
    m_Any_Location_Compensate_8_Min = newAny_Location_Compensate_8_Min;
    emit Any_Location_Compensate_8_MinChanged();
}

QString ModbusControl::Any_Location_Compensate_8_Max() const
{
    return m_Any_Location_Compensate_8_Max;
}

void ModbusControl::setAny_Location_Compensate_8_Max(const QString &newAny_Location_Compensate_8_Max)
{
    if (m_Any_Location_Compensate_8_Max == newAny_Location_Compensate_8_Max)
        return;
    m_Any_Location_Compensate_8_Max = newAny_Location_Compensate_8_Max;
    emit Any_Location_Compensate_8_MaxChanged();
}

QString ModbusControl::Any_Location_Compensate_8() const
{
    return m_Any_Location_Compensate_8;
}

void ModbusControl::setAny_Location_Compensate_8(const QString &newAny_Location_Compensate_8)
{
    if (m_Any_Location_Compensate_8 == newAny_Location_Compensate_8)
        return;
    m_Any_Location_Compensate_8 = newAny_Location_Compensate_8;
    emit Any_Location_Compensate_8Changed();
}

QString ModbusControl::Any_Location_Compensate_9_Min() const
{
    return m_Any_Location_Compensate_9_Min;
}

void ModbusControl::setAny_Location_Compensate_9_Min(const QString &newAny_Location_Compensate_9_Min)
{
    if (m_Any_Location_Compensate_9_Min == newAny_Location_Compensate_9_Min)
        return;
    m_Any_Location_Compensate_9_Min = newAny_Location_Compensate_9_Min;
    emit Any_Location_Compensate_9_MinChanged();
}

QString ModbusControl::Any_Location_Compensate_9_Max() const
{
    return m_Any_Location_Compensate_9_Max;
}

void ModbusControl::setAny_Location_Compensate_9_Max(const QString &newAny_Location_Compensate_9_Max)
{
    if (m_Any_Location_Compensate_9_Max == newAny_Location_Compensate_9_Max)
        return;
    m_Any_Location_Compensate_9_Max = newAny_Location_Compensate_9_Max;
    emit Any_Location_Compensate_9_MaxChanged();
}

QString ModbusControl::Any_Location_Compensate_9() const
{
    return m_Any_Location_Compensate_9;
}

void ModbusControl::setAny_Location_Compensate_9(const QString &newAny_Location_Compensate_9)
{
    if (m_Any_Location_Compensate_9 == newAny_Location_Compensate_9)
        return;
    m_Any_Location_Compensate_9 = newAny_Location_Compensate_9;
    emit Any_Location_Compensate_9Changed();
}

QString ModbusControl::Any_Location_Compensate_10_Min() const
{
    return m_Any_Location_Compensate_10_Min;
}

void ModbusControl::setAny_Location_Compensate_10_Min(const QString &newAny_Location_Compensate_10_Min)
{
    if (m_Any_Location_Compensate_10_Min == newAny_Location_Compensate_10_Min)
        return;
    m_Any_Location_Compensate_10_Min = newAny_Location_Compensate_10_Min;
    emit Any_Location_Compensate_10_MinChanged();
}

QString ModbusControl::Any_Location_Compensate_10_Max() const
{
    return m_Any_Location_Compensate_10_Max;
}

void ModbusControl::setAny_Location_Compensate_10_Max(const QString &newAny_Location_Compensate_10_Max)
{
    if (m_Any_Location_Compensate_10_Max == newAny_Location_Compensate_10_Max)
        return;
    m_Any_Location_Compensate_10_Max = newAny_Location_Compensate_10_Max;
    emit Any_Location_Compensate_10_MaxChanged();
}

QString ModbusControl::Any_Location_Compensate_10() const
{
    return m_Any_Location_Compensate_10;
}

void ModbusControl::setAny_Location_Compensate_10(const QString &newAny_Location_Compensate_10)
{
    if (m_Any_Location_Compensate_10 == newAny_Location_Compensate_10)
        return;
    m_Any_Location_Compensate_10 = newAny_Location_Compensate_10;
    emit Any_Location_Compensate_10Changed();
}

QString ModbusControl::Any_Location_Compensate_11_Min() const
{
    return m_Any_Location_Compensate_11_Min;
}

void ModbusControl::setAny_Location_Compensate_11_Min(const QString &newAny_Location_Compensate_11_Min)
{
    if (m_Any_Location_Compensate_11_Min == newAny_Location_Compensate_11_Min)
        return;
    m_Any_Location_Compensate_11_Min = newAny_Location_Compensate_11_Min;
    emit Any_Location_Compensate_11_MinChanged();
}

QString ModbusControl::Any_Location_Compensate_11_Max() const
{
    return m_Any_Location_Compensate_11_Max;
}

void ModbusControl::setAny_Location_Compensate_11_Max(const QString &newAny_Location_Compensate_11_Max)
{
    if (m_Any_Location_Compensate_11_Max == newAny_Location_Compensate_11_Max)
        return;
    m_Any_Location_Compensate_11_Max = newAny_Location_Compensate_11_Max;
    emit Any_Location_Compensate_11_MaxChanged();
}

QString ModbusControl::Any_Location_Compensate_11() const
{
    return m_Any_Location_Compensate_11;
}

void ModbusControl::setAny_Location_Compensate_11(const QString &newAny_Location_Compensate_11)
{
    if (m_Any_Location_Compensate_11 == newAny_Location_Compensate_11)
        return;
    m_Any_Location_Compensate_11 = newAny_Location_Compensate_11;
    emit Any_Location_Compensate_11Changed();
}

QString ModbusControl::Any_Location_Compensate_12_Min() const
{
    return m_Any_Location_Compensate_12_Min;
}

void ModbusControl::setAny_Location_Compensate_12_Min(const QString &newAny_Location_Compensate_12_Min)
{
    if (m_Any_Location_Compensate_12_Min == newAny_Location_Compensate_12_Min)
        return;
    m_Any_Location_Compensate_12_Min = newAny_Location_Compensate_12_Min;
    emit Any_Location_Compensate_12_MinChanged();
}

QString ModbusControl::Any_Location_Compensate_12_Max() const
{
    return m_Any_Location_Compensate_12_Max;
}

void ModbusControl::setAny_Location_Compensate_12_Max(const QString &newAny_Location_Compensate_12_Max)
{
    if (m_Any_Location_Compensate_12_Max == newAny_Location_Compensate_12_Max)
        return;
    m_Any_Location_Compensate_12_Max = newAny_Location_Compensate_12_Max;
    emit Any_Location_Compensate_12_MaxChanged();
}

QString ModbusControl::Any_Location_Compensate_12() const
{
    return m_Any_Location_Compensate_12;
}

void ModbusControl::setAny_Location_Compensate_12(const QString &newAny_Location_Compensate_12)
{
    if (m_Any_Location_Compensate_12 == newAny_Location_Compensate_12)
        return;
    m_Any_Location_Compensate_12 = newAny_Location_Compensate_12;
    emit Any_Location_Compensate_12Changed();
}

QString ModbusControl::Any_Location_Compensate_13_Min() const
{
    return m_Any_Location_Compensate_13_Min;
}

void ModbusControl::setAny_Location_Compensate_13_Min(const QString &newAny_Location_Compensate_13_Min)
{
    if (m_Any_Location_Compensate_13_Min == newAny_Location_Compensate_13_Min)
        return;
    m_Any_Location_Compensate_13_Min = newAny_Location_Compensate_13_Min;
    emit Any_Location_Compensate_13_MinChanged();
}

QString ModbusControl::Any_Location_Compensate_13_Max() const
{
    return m_Any_Location_Compensate_13_Max;
}

void ModbusControl::setAny_Location_Compensate_13_Max(const QString &newAny_Location_Compensate_13_Max)
{
    if (m_Any_Location_Compensate_13_Max == newAny_Location_Compensate_13_Max)
        return;
    m_Any_Location_Compensate_13_Max = newAny_Location_Compensate_13_Max;
    emit Any_Location_Compensate_13_MaxChanged();
}

QString ModbusControl::Any_Location_Compensate_13() const
{
    return m_Any_Location_Compensate_13;
}

void ModbusControl::setAny_Location_Compensate_13(const QString &newAny_Location_Compensate_13)
{
    if (m_Any_Location_Compensate_13 == newAny_Location_Compensate_13)
        return;
    m_Any_Location_Compensate_13 = newAny_Location_Compensate_13;
    emit Any_Location_Compensate_13Changed();
}

QString ModbusControl::Any_Location_Compensate_14_Min() const
{
    return m_Any_Location_Compensate_14_Min;
}

void ModbusControl::setAny_Location_Compensate_14_Min(const QString &newAny_Location_Compensate_14_Min)
{
    if (m_Any_Location_Compensate_14_Min == newAny_Location_Compensate_14_Min)
        return;
    m_Any_Location_Compensate_14_Min = newAny_Location_Compensate_14_Min;
    emit Any_Location_Compensate_14_MinChanged();
}

QString ModbusControl::Any_Location_Compensate_14_Max() const
{
    return m_Any_Location_Compensate_14_Max;
}

void ModbusControl::setAny_Location_Compensate_14_Max(const QString &newAny_Location_Compensate_14_Max)
{
    if (m_Any_Location_Compensate_14_Max == newAny_Location_Compensate_14_Max)
        return;
    m_Any_Location_Compensate_14_Max = newAny_Location_Compensate_14_Max;
    emit Any_Location_Compensate_14_MaxChanged();
}

QString ModbusControl::Any_Location_Compensate_14() const
{
    return m_Any_Location_Compensate_14;
}

void ModbusControl::setAny_Location_Compensate_14(const QString &newAny_Location_Compensate_14)
{
    if (m_Any_Location_Compensate_14 == newAny_Location_Compensate_14)
        return;
    m_Any_Location_Compensate_14 = newAny_Location_Compensate_14;
    emit Any_Location_Compensate_14Changed();
}

QString ModbusControl::Any_Location_Compensate_15_Min() const
{
    return m_Any_Location_Compensate_15_Min;
}

void ModbusControl::setAny_Location_Compensate_15_Min(const QString &newAny_Location_Compensate_15_Min)
{
    if (m_Any_Location_Compensate_15_Min == newAny_Location_Compensate_15_Min)
        return;
    m_Any_Location_Compensate_15_Min = newAny_Location_Compensate_15_Min;
    emit Any_Location_Compensate_15_MinChanged();
}

QString ModbusControl::Any_Location_Compensate_15_Max() const
{
    return m_Any_Location_Compensate_15_Max;
}

void ModbusControl::setAny_Location_Compensate_15_Max(const QString &newAny_Location_Compensate_15_Max)
{
    if (m_Any_Location_Compensate_15_Max == newAny_Location_Compensate_15_Max)
        return;
    m_Any_Location_Compensate_15_Max = newAny_Location_Compensate_15_Max;
    emit Any_Location_Compensate_15_MaxChanged();
}

QString ModbusControl::Any_Location_Compensate_15() const
{
    return m_Any_Location_Compensate_15;
}

void ModbusControl::setAny_Location_Compensate_15(const QString &newAny_Location_Compensate_15)
{
    if (m_Any_Location_Compensate_15 == newAny_Location_Compensate_15)
        return;
    m_Any_Location_Compensate_15 = newAny_Location_Compensate_15;
    emit Any_Location_Compensate_15Changed();
}

QString ModbusControl::Any_Location_Compensate_16_Min() const
{
    return m_Any_Location_Compensate_16_Min;
}

void ModbusControl::setAny_Location_Compensate_16_Min(const QString &newAny_Location_Compensate_16_Min)
{
    if (m_Any_Location_Compensate_16_Min == newAny_Location_Compensate_16_Min)
        return;
    m_Any_Location_Compensate_16_Min = newAny_Location_Compensate_16_Min;
    emit Any_Location_Compensate_16_MinChanged();
}

QString ModbusControl::Any_Location_Compensate_16_Max() const
{
    return m_Any_Location_Compensate_16_Max;
}

void ModbusControl::setAny_Location_Compensate_16_Max(const QString &newAny_Location_Compensate_16_Max)
{
    if (m_Any_Location_Compensate_16_Max == newAny_Location_Compensate_16_Max)
        return;
    m_Any_Location_Compensate_16_Max = newAny_Location_Compensate_16_Max;
    emit Any_Location_Compensate_16_MaxChanged();
}

QString ModbusControl::Any_Location_Compensate_16() const
{
    return m_Any_Location_Compensate_16;
}

void ModbusControl::setAny_Location_Compensate_16(const QString &newAny_Location_Compensate_16)
{
    if (m_Any_Location_Compensate_16 == newAny_Location_Compensate_16)
        return;
    m_Any_Location_Compensate_16 = newAny_Location_Compensate_16;
    emit Any_Location_Compensate_16Changed();
}

QString ModbusControl::Any_Location_Compensate_17_Min() const
{
    return m_Any_Location_Compensate_17_Min;
}

void ModbusControl::setAny_Location_Compensate_17_Min(const QString &newAny_Location_Compensate_17_Min)
{
    if (m_Any_Location_Compensate_17_Min == newAny_Location_Compensate_17_Min)
        return;
    m_Any_Location_Compensate_17_Min = newAny_Location_Compensate_17_Min;
    emit Any_Location_Compensate_17_MinChanged();
}

QString ModbusControl::Any_Location_Compensate_17_Max() const
{
    return m_Any_Location_Compensate_17_Max;
}

void ModbusControl::setAny_Location_Compensate_17_Max(const QString &newAny_Location_Compensate_17_Max)
{
    if (m_Any_Location_Compensate_17_Max == newAny_Location_Compensate_17_Max)
        return;
    m_Any_Location_Compensate_17_Max = newAny_Location_Compensate_17_Max;
    emit Any_Location_Compensate_17_MaxChanged();
}

QString ModbusControl::Any_Location_Compensate_17() const
{
    return m_Any_Location_Compensate_17;
}

void ModbusControl::setAny_Location_Compensate_17(const QString &newAny_Location_Compensate_17)
{
    if (m_Any_Location_Compensate_17 == newAny_Location_Compensate_17)
        return;
    m_Any_Location_Compensate_17 = newAny_Location_Compensate_17;
    emit Any_Location_Compensate_17Changed();
}

QString ModbusControl::Any_Location_Compensate_18_Min() const
{
    return m_Any_Location_Compensate_18_Min;
}

void ModbusControl::setAny_Location_Compensate_18_Min(const QString &newAny_Location_Compensate_18_Min)
{
    if (m_Any_Location_Compensate_18_Min == newAny_Location_Compensate_18_Min)
        return;
    m_Any_Location_Compensate_18_Min = newAny_Location_Compensate_18_Min;
    emit Any_Location_Compensate_18_MinChanged();
}

QString ModbusControl::Any_Location_Compensate_18_Max() const
{
    return m_Any_Location_Compensate_18_Max;
}

void ModbusControl::setAny_Location_Compensate_18_Max(const QString &newAny_Location_Compensate_18_Max)
{
    if (m_Any_Location_Compensate_18_Max == newAny_Location_Compensate_18_Max)
        return;
    m_Any_Location_Compensate_18_Max = newAny_Location_Compensate_18_Max;
    emit Any_Location_Compensate_18_MaxChanged();
}

QString ModbusControl::Any_Location_Compensate_18() const
{
    return m_Any_Location_Compensate_18;
}

void ModbusControl::setAny_Location_Compensate_18(const QString &newAny_Location_Compensate_18)
{
    if (m_Any_Location_Compensate_18 == newAny_Location_Compensate_18)
        return;
    m_Any_Location_Compensate_18 = newAny_Location_Compensate_18;
    emit Any_Location_Compensate_18Changed();
}

QString ModbusControl::Any_Location_Compensate_19_Min() const
{
    return m_Any_Location_Compensate_19_Min;
}

void ModbusControl::setAny_Location_Compensate_19_Min(const QString &newAny_Location_Compensate_19_Min)
{
    if (m_Any_Location_Compensate_19_Min == newAny_Location_Compensate_19_Min)
        return;
    m_Any_Location_Compensate_19_Min = newAny_Location_Compensate_19_Min;
    emit Any_Location_Compensate_19_MinChanged();
}

QString ModbusControl::Any_Location_Compensate_19_Max() const
{
    return m_Any_Location_Compensate_19_Max;
}

void ModbusControl::setAny_Location_Compensate_19_Max(const QString &newAny_Location_Compensate_19_Max)
{
    if (m_Any_Location_Compensate_19_Max == newAny_Location_Compensate_19_Max)
        return;
    m_Any_Location_Compensate_19_Max = newAny_Location_Compensate_19_Max;
    emit Any_Location_Compensate_19_MaxChanged();
}

QString ModbusControl::Any_Location_Compensate_19() const
{
    return m_Any_Location_Compensate_19;
}

void ModbusControl::setAny_Location_Compensate_19(const QString &newAny_Location_Compensate_19)
{
    if (m_Any_Location_Compensate_19 == newAny_Location_Compensate_19)
        return;
    m_Any_Location_Compensate_19 = newAny_Location_Compensate_19;
    emit Any_Location_Compensate_19Changed();
}

QString ModbusControl::Any_Location_Compensate_20_Min() const
{
    return m_Any_Location_Compensate_20_Min;
}

void ModbusControl::setAny_Location_Compensate_20_Min(const QString &newAny_Location_Compensate_20_Min)
{
    if (m_Any_Location_Compensate_20_Min == newAny_Location_Compensate_20_Min)
        return;
    m_Any_Location_Compensate_20_Min = newAny_Location_Compensate_20_Min;
    emit Any_Location_Compensate_20_MinChanged();
}

QString ModbusControl::Any_Location_Compensate_20_Max() const
{
    return m_Any_Location_Compensate_20_Max;
}

void ModbusControl::setAny_Location_Compensate_20_Max(const QString &newAny_Location_Compensate_20_Max)
{
    if (m_Any_Location_Compensate_20_Max == newAny_Location_Compensate_20_Max)
        return;
    m_Any_Location_Compensate_20_Max = newAny_Location_Compensate_20_Max;
    emit Any_Location_Compensate_20_MaxChanged();
}

QString ModbusControl::Any_Location_Compensate_20() const
{
    return m_Any_Location_Compensate_20;
}

void ModbusControl::setAny_Location_Compensate_20(const QString &newAny_Location_Compensate_20)
{
    if (m_Any_Location_Compensate_20 == newAny_Location_Compensate_20)
        return;
    m_Any_Location_Compensate_20 = newAny_Location_Compensate_20;
    emit Any_Location_Compensate_20Changed();
}

QString ModbusControl::ExtraLong_MaterialLength() const
{
    return m_ExtraLong_MaterialLength;
}

void ModbusControl::setExtraLong_MaterialLength(const QString &newExtraLong_MaterialLength)
{
    if (m_ExtraLong_MaterialLength == newExtraLong_MaterialLength)
        return;
    m_ExtraLong_MaterialLength = newExtraLong_MaterialLength;
    emit ExtraLong_MaterialLengthChanged();
}

QString ModbusControl::ExtraLong_MaterialLength_Compensate() const
{
    return m_ExtraLong_MaterialLength_Compensate;
}

void ModbusControl::setExtraLong_MaterialLength_Compensate(const QString &newExtraLong_MaterialLength_Compensate)
{
    if (m_ExtraLong_MaterialLength_Compensate == newExtraLong_MaterialLength_Compensate)
        return;
    m_ExtraLong_MaterialLength_Compensate = newExtraLong_MaterialLength_Compensate;
    emit ExtraLong_MaterialLength_CompensateChanged();
}

QString ModbusControl::ExtraShort_MaterialLength() const
{
    return m_ExtraShort_MaterialLength;
}

void ModbusControl::setExtraShort_MaterialLength(const QString &newExtraShort_MaterialLength)
{
    if (m_ExtraShort_MaterialLength == newExtraShort_MaterialLength)
        return;
    m_ExtraShort_MaterialLength = newExtraShort_MaterialLength;
    emit ExtraShort_MaterialLengthChanged();
}

QString ModbusControl::ExtraShort_Compensate() const
{
    return m_ExtraShort_Compensate;
}

void ModbusControl::setExtraShort_Compensate(const QString &newExtraShort_Compensate)
{
    if (m_ExtraShort_Compensate == newExtraShort_Compensate)
        return;
    m_ExtraShort_Compensate = newExtraShort_Compensate;
    emit ExtraShort_CompensateChanged();
}

QString ModbusControl::Pull_Back_Distance() const
{
    return m_Pull_Back_Distance;
}

void ModbusControl::setPull_Back_Distance(const QString &newPull_Back_Distance)
{
    if (m_Pull_Back_Distance == newPull_Back_Distance)
        return;
    m_Pull_Back_Distance = newPull_Back_Distance;
    emit Pull_Back_DistanceChanged();
}

QString ModbusControl::Corner_MaterialLength() const
{
    return m_Corner_MaterialLength;
}

void ModbusControl::setCorner_MaterialLength(const QString &newCorner_MaterialLength)
{
    if (m_Corner_MaterialLength == newCorner_MaterialLength)
        return;
    m_Corner_MaterialLength = newCorner_MaterialLength;
    emit Corner_MaterialLengthChanged();
}

QString ModbusControl::Corner_MaterialLength_Min() const
{
    return m_Corner_MaterialLength_Min;
}

void ModbusControl::setCorner_MaterialLength_Min(const QString &newCorner_MaterialLength_Min)
{
    if (m_Corner_MaterialLength_Min == newCorner_MaterialLength_Min)
        return;
    m_Corner_MaterialLength_Min = newCorner_MaterialLength_Min;
    emit Corner_MaterialLength_MinChanged();
}

QString ModbusControl::Corner_Length() const
{
    return m_Corner_Length;
}

void ModbusControl::setCorner_Length(const QString &newCorner_Length)
{
    if (m_Corner_Length == newCorner_Length)
        return;
    m_Corner_Length = newCorner_Length;
    emit Corner_LengthChanged();
}

QString ModbusControl::Corner_Cut_Segments() const
{
    return m_Corner_Cut_Segments;
}

void ModbusControl::setCorner_Cut_Segments(const QString &newCorner_Cut_Segments)
{
    if (m_Corner_Cut_Segments == newCorner_Cut_Segments)
        return;
    m_Corner_Cut_Segments = newCorner_Cut_Segments;
    emit Corner_Cut_SegmentsChanged();
}

QString ModbusControl::Corner_Knife_Compensate() const
{
    return m_Corner_Knife_Compensate;
}

void ModbusControl::setCorner_Knife_Compensate(const QString &newCorner_Knife_Compensate)
{
    if (m_Corner_Knife_Compensate == newCorner_Knife_Compensate)
        return;
    m_Corner_Knife_Compensate = newCorner_Knife_Compensate;
    emit Corner_Knife_CompensateChanged();
}

QString ModbusControl::Current_Corner_Segments() const
{
    return m_Current_Corner_Segments;
}

void ModbusControl::setCurrent_Corner_Segments(const QString &newCurrent_Corner_Segments)
{
    if (m_Current_Corner_Segments == newCurrent_Corner_Segments)
        return;
    m_Current_Corner_Segments = newCurrent_Corner_Segments;
    emit Current_Corner_SegmentsChanged();
}

QString ModbusControl::Worked_Corner_Segments() const
{
    return m_Worked_Corner_Segments;
}

void ModbusControl::setWorked_Corner_Segments(const QString &newWorked_Corner_Segments)
{
    if (m_Worked_Corner_Segments == newWorked_Corner_Segments)
        return;
    m_Worked_Corner_Segments = newWorked_Corner_Segments;
    emit Worked_Corner_SegmentsChanged();
}

QString ModbusControl::Handle_Location() const
{
    return m_Handle_Location;
}

void ModbusControl::setHandle_Location(const QString &newHandle_Location)
{
    if (m_Handle_Location == newHandle_Location)
        return;
    m_Handle_Location = newHandle_Location;
    emit Handle_LocationChanged();
}

QString ModbusControl::Handle_Location_Compensate() const
{
    return m_Handle_Location_Compensate;
}

void ModbusControl::setHandle_Location_Compensate(const QString &newHandle_Location_Compensate)
{
    if (m_Handle_Location_Compensate == newHandle_Location_Compensate)
        return;
    m_Handle_Location_Compensate = newHandle_Location_Compensate;
    emit Handle_Location_CompensateChanged();
}

QString ModbusControl::Handle_Width() const
{
    return m_Handle_Width;
}

void ModbusControl::setHandle_Width(const QString &newHandle_Width)
{
    if (m_Handle_Width == newHandle_Width)
        return;
    m_Handle_Width = newHandle_Width;
    emit Handle_WidthChanged();
}

bool ModbusControl::X0() const
{
    return m_X0;
}

void ModbusControl::setX0(bool newX0)
{
    if (m_X0 == newX0)
        return;
    m_X0 = newX0;
    emit X0Changed();
}

bool ModbusControl::X1() const
{
    return m_X1;
}

void ModbusControl::setX1(bool newX1)
{
    if (m_X1 == newX1)
        return;
    m_X1 = newX1;
    emit X1Changed();
}

bool ModbusControl::X2() const
{
    return m_X2;
}

void ModbusControl::setX2(bool newX2)
{
    if (m_X2 == newX2)
        return;
    m_X2 = newX2;
    emit X2Changed();
}

bool ModbusControl::X3() const
{
    return m_X3;
}

void ModbusControl::setX3(bool newX3)
{
    if (m_X3 == newX3)
        return;
    m_X3 = newX3;
    emit X3Changed();
}

bool ModbusControl::X4() const
{
    return m_X4;
}

void ModbusControl::setX4(bool newX4)
{
    if (m_X4 == newX4)
        return;
    m_X4 = newX4;
    emit X4Changed();
}

bool ModbusControl::X5() const
{
    return m_X5;
}

void ModbusControl::setX5(bool newX5)
{
    if (m_X5 == newX5)
        return;
    m_X5 = newX5;
    emit X5Changed();
}

bool ModbusControl::X6() const
{
    return m_X6;
}

void ModbusControl::setX6(bool newX6)
{
    if (m_X6 == newX6)
        return;
    m_X6 = newX6;
    emit X6Changed();
}

bool ModbusControl::X7() const
{
    return m_X7;
}

void ModbusControl::setX7(bool newX7)
{
    if (m_X7 == newX7)
        return;
    m_X7 = newX7;
    emit X7Changed();
}

bool ModbusControl::X10() const
{
    return m_X10;
}

void ModbusControl::setX10(bool newX10)
{
    if (m_X10 == newX10)
        return;
    m_X10 = newX10;
    emit X10Changed();
}

bool ModbusControl::X11() const
{
    return m_X11;
}

void ModbusControl::setX11(bool newX11)
{
    if (m_X11 == newX11)
        return;
    m_X11 = newX11;
    emit X11Changed();
}

bool ModbusControl::X12() const
{
    return m_X12;
}

void ModbusControl::setX12(bool newX12)
{
    if (m_X12 == newX12)
        return;
    m_X12 = newX12;
    emit X12Changed();
}

bool ModbusControl::X13() const
{
    return m_X13;
}

void ModbusControl::setX13(bool newX13)
{
    if (m_X13 == newX13)
        return;
    m_X13 = newX13;
    emit X13Changed();
}

bool ModbusControl::X14() const
{
    return m_X14;
}

void ModbusControl::setX14(bool newX14)
{
    if (m_X14 == newX14)
        return;
    m_X14 = newX14;
    emit X14Changed();
}

bool ModbusControl::X15() const
{
    return m_X15;
}

void ModbusControl::setX15(bool newX15)
{
    if (m_X15 == newX15)
        return;
    m_X15 = newX15;
    emit X15Changed();
}

bool ModbusControl::X16() const
{
    return m_X16;
}

void ModbusControl::setX16(bool newX16)
{
    if (m_X16 == newX16)
        return;
    m_X16 = newX16;
    emit X16Changed();
}

bool ModbusControl::X17() const
{
    return m_X17;
}

void ModbusControl::setX17(bool newX17)
{
    if (m_X17 == newX17)
        return;
    m_X17 = newX17;
    emit X17Changed();
}

bool ModbusControl::X20() const
{
    return m_X20;
}

void ModbusControl::setX20(bool newX20)
{
    if (m_X20 == newX20)
        return;
    m_X20 = newX20;
    emit X20Changed();
}

bool ModbusControl::X21() const
{
    return m_X21;
}

void ModbusControl::setX21(bool newX21)
{
    if (m_X21 == newX21)
        return;
    m_X21 = newX21;
    emit X21Changed();
}

bool ModbusControl::X22() const
{
    return m_X22;
}

void ModbusControl::setX22(bool newX22)
{
    if (m_X22 == newX22)
        return;
    m_X22 = newX22;
    emit X22Changed();
}

bool ModbusControl::Y0() const
{
    return m_Y0;
}

void ModbusControl::setY0(bool newY0)
{
    if (m_Y0 == newY0)
        return;
    m_Y0 = newY0;
    emit Y0Changed();
}

bool ModbusControl::Y1() const
{
    return m_Y1;
}

void ModbusControl::setY1(bool newY1)
{
    if (m_Y1 == newY1)
        return;
    m_Y1 = newY1;
    emit Y1Changed();
}

bool ModbusControl::Y2() const
{
    return m_Y2;
}

void ModbusControl::setY2(bool newY2)
{
    if (m_Y2 == newY2)
        return;
    m_Y2 = newY2;
    emit Y2Changed();
}

bool ModbusControl::Y3() const
{
    return m_Y3;
}

void ModbusControl::setY3(bool newY3)
{
    if (m_Y3 == newY3)
        return;
    m_Y3 = newY3;
    emit Y3Changed();
}

bool ModbusControl::Y4() const
{
    return m_Y4;
}

void ModbusControl::setY4(bool newY4)
{
    if (m_Y4 == newY4)
        return;
    m_Y4 = newY4;
    emit Y4Changed();
}

bool ModbusControl::Y5() const
{
    return m_Y5;
}

void ModbusControl::setY5(bool newY5)
{
    if (m_Y5 == newY5)
        return;
    m_Y5 = newY5;
    emit Y5Changed();
}

bool ModbusControl::Y6() const
{
    return m_Y6;
}

void ModbusControl::setY6(bool newY6)
{
    if (m_Y6 == newY6)
        return;
    m_Y6 = newY6;
    emit Y6Changed();
}

bool ModbusControl::Y7() const
{
    return m_Y7;
}

void ModbusControl::setY7(bool newY7)
{
    if (m_Y7 == newY7)
        return;
    m_Y7 = newY7;
    emit Y7Changed();
}

bool ModbusControl::Y10() const
{
    return m_Y10;
}

void ModbusControl::setY10(bool newY10)
{
    if (m_Y10 == newY10)
        return;
    m_Y10 = newY10;
    emit Y10Changed();
}

bool ModbusControl::Y11() const
{
    return m_Y11;
}

void ModbusControl::setY11(bool newY11)
{
    if (m_Y11 == newY11)
        return;
    m_Y11 = newY11;
    emit Y11Changed();
}

bool ModbusControl::Y12() const
{
    return m_Y12;
}

void ModbusControl::setY12(bool newY12)
{
    if (m_Y12 == newY12)
        return;
    m_Y12 = newY12;
    emit Y12Changed();
}

bool ModbusControl::Y13() const
{
    return m_Y13;
}

void ModbusControl::setY13(bool newY13)
{
    if (m_Y13 == newY13)
        return;
    m_Y13 = newY13;
    emit Y13Changed();
}

bool ModbusControl::Y14() const
{
    return m_Y14;
}

void ModbusControl::setY14(bool newY14)
{
    if (m_Y14 == newY14)
        return;
    m_Y14 = newY14;
    emit Y14Changed();
}

bool ModbusControl::Y15() const
{
    return m_Y15;
}

void ModbusControl::setY15(bool newY15)
{
    if (m_Y15 == newY15)
        return;
    m_Y15 = newY15;
    emit Y15Changed();
}

bool ModbusControl::Y16() const
{
    return m_Y16;
}

void ModbusControl::setY16(bool newY16)
{
    if (m_Y16 == newY16)
        return;
    m_Y16 = newY16;
    emit Y16Changed();
}

bool ModbusControl::Y17() const
{
    return m_Y17;
}

void ModbusControl::setY17(bool newY17)
{
    if (m_Y17 == newY17)
        return;
    m_Y17 = newY17;
    emit Y17Changed();
}

bool ModbusControl::Y20() const
{
    return m_Y20;
}

void ModbusControl::setY20(bool newY20)
{
    if (m_Y20 == newY20)
        return;
    m_Y20 = newY20;
    emit Y20Changed();
}

bool ModbusControl::Y21() const
{
    return m_Y21;
}

void ModbusControl::setY21(bool newY21)
{
    if (m_Y21 == newY21)
        return;
    m_Y21 = newY21;
    emit Y21Changed();
}

bool ModbusControl::Y22() const
{
    return m_Y22;
}

void ModbusControl::setY22(bool newY22)
{
    if (m_Y22 == newY22)
        return;
    m_Y22 = newY22;
    emit Y22Changed();
}

bool ModbusControl::Y23() const
{
    return m_Y23;
}

void ModbusControl::setY23(bool newY23)
{
    if (m_Y23 == newY23)
        return;
    m_Y23 = newY23;
    emit Y23Changed();
}

bool ModbusControl::Y24() const
{
    return m_Y24;
}

void ModbusControl::setY24(bool newY24)
{
    if (m_Y24 == newY24)
        return;
    m_Y24 = newY24;
    emit Y24Changed();
}

bool ModbusControl::Y25() const
{
    return m_Y25;
}

void ModbusControl::setY25(bool newY25)
{
    if (m_Y25 == newY25)
        return;
    m_Y25 = newY25;
    emit Y25Changed();
}

bool ModbusControl::M_42() const
{
    return m_M_42;
}

void ModbusControl::setM_42(bool newM_42)
{
    if (m_M_42 == newM_42)
        return;
    m_M_42 = newM_42;
    emit M_42Changed();
}

bool ModbusControl::M_43() const
{
    return m_M_43;
}

void ModbusControl::setM_43(bool newM_43)
{
    if (m_M_43 == newM_43)
        return;
    m_M_43 = newM_43;
    emit M_43Changed();
}

bool ModbusControl::M_47() const
{
    return m_M_47;
}

void ModbusControl::setM_47(bool newM_47)
{
    if (m_M_47 == newM_47)
        return;
    m_M_47 = newM_47;
    emit M_47Changed();
}

bool ModbusControl::M_52() const
{
    return m_M_52;
}

void ModbusControl::setM_52(bool newM_52)
{
    if (m_M_52 == newM_52)
        return;
    m_M_52 = newM_52;
    emit M_52Changed();
}

bool ModbusControl::M_56() const
{
    return m_M_56;
}

void ModbusControl::setM_56(bool newM_56)
{
    if (m_M_56 == newM_56)
        return;
    m_M_56 = newM_56;
    emit M_56Changed();
}

bool ModbusControl::M_57() const
{
    return m_M_57;
}

void ModbusControl::setM_57(bool newM_57)
{
    if (m_M_57 == newM_57)
        return;
    m_M_57 = newM_57;
    emit M_57Changed();
}

bool ModbusControl::M_58() const
{
    return m_M_58;
}

void ModbusControl::setM_58(bool newM_58)
{
    if (m_M_58 == newM_58)
        return;
    m_M_58 = newM_58;
    emit M_58Changed();
}

bool ModbusControl::M_59() const
{
    return m_M_59;
}

void ModbusControl::setM_59(bool newM_59)
{
    if (m_M_59 == newM_59)
        return;
    m_M_59 = newM_59;
    emit M_59Changed();
}

bool ModbusControl::M_64() const
{
    return m_M_64;
}

void ModbusControl::setM_64(bool newM_64)
{
    if (m_M_64 == newM_64)
        return;
    m_M_64 = newM_64;
    emit M_64Changed();
}

bool ModbusControl::M_68() const
{
    return m_M_68;
}

void ModbusControl::setM_68(bool newM_68)
{
    if (m_M_68 == newM_68)
        return;
    m_M_68 = newM_68;
    emit M_68Changed();
}

bool ModbusControl::M_69() const
{
    return m_M_69;
}

void ModbusControl::setM_69(bool newM_69)
{
    if (m_M_69 == newM_69)
        return;
    m_M_69 = newM_69;
    emit M_69Changed();
}

bool ModbusControl::M_73() const
{
    return m_M_73;
}

void ModbusControl::setM_73(bool newM_73)
{
    if (m_M_73 == newM_73)
        return;
    m_M_73 = newM_73;
    emit M_73Changed();
}

bool ModbusControl::M_76() const
{
    return m_M_76;
}

void ModbusControl::setM_76(bool newM_76)
{
    if (m_M_76 == newM_76)
        return;
    m_M_76 = newM_76;
    emit M_76Changed();
}

bool ModbusControl::M_77() const
{
    return m_M_77;
}

void ModbusControl::setM_77(bool newM_77)
{
    if (m_M_77 == newM_77)
        return;
    m_M_77 = newM_77;
    emit M_77Changed();
}

bool ModbusControl::M_80() const
{
    return m_M_80;
}

void ModbusControl::setM_80(bool newM_80)
{
    if (m_M_80 == newM_80)
        return;
    m_M_80 = newM_80;
    emit M_80Changed();
}

bool ModbusControl::M_134() const
{
    return m_M_134;
}

void ModbusControl::setM_134(bool newM_134)
{
    if (m_M_134 == newM_134)
        return;
    m_M_134 = newM_134;
    emit M_134Changed();
}

bool ModbusControl::M_137() const
{
    return m_M_137;
}

void ModbusControl::setM_137(bool newM_137)
{
    if (m_M_137 == newM_137)
        return;
    m_M_137 = newM_137;
    emit M_137Changed();
}

bool ModbusControl::M_143() const
{
    return m_M_143;
}

void ModbusControl::setM_143(bool newM_143)
{
    if (m_M_143 == newM_143)
        return;
    m_M_143 = newM_143;
    emit M_143Changed();
}

bool ModbusControl::M_149() const
{
    return m_M_149;
}

void ModbusControl::setM_149(bool newM_149)
{
    if (m_M_149 == newM_149)
        return;
    m_M_149 = newM_149;
    emit M_149Changed();
}

bool ModbusControl::M_152() const
{
    return m_M_152;
}

void ModbusControl::setM_152(bool newM_152)
{
    if (m_M_152 == newM_152)
        return;
    m_M_152 = newM_152;
    emit M_152Changed();
}

bool ModbusControl::M_153() const
{
    return m_M_153;
}

void ModbusControl::setM_153(bool newM_153)
{
    if (m_M_153 == newM_153)
        return;
    m_M_153 = newM_153;
    emit M_153Changed();
}

bool ModbusControl::M_159() const
{
    return m_M_159;
}

void ModbusControl::setM_159(bool newM_159)
{
    if (m_M_159 == newM_159)
        return;
    m_M_159 = newM_159;
    emit M_159Changed();
}

bool ModbusControl::M_164() const
{
    return m_M_164;
}

void ModbusControl::setM_164(bool newM_164)
{
    if (m_M_164 == newM_164)
        return;
    m_M_164 = newM_164;
    emit M_164Changed();
}

bool ModbusControl::M_170() const
{
    return m_M_170;
}

void ModbusControl::setM_170(bool newM_170)
{
    if (m_M_170 == newM_170)
        return;
    m_M_170 = newM_170;
    emit M_170Changed();
}

bool ModbusControl::M_196() const
{
    return m_M_196;
}

void ModbusControl::setM_196(bool newM_196)
{
    if (m_M_196 == newM_196)
        return;
    m_M_196 = newM_196;
    emit M_196Changed();
}

bool ModbusControl::M_197() const
{
    return m_M_197;
}

void ModbusControl::setM_197(bool newM_197)
{
    if (m_M_197 == newM_197)
        return;
    m_M_197 = newM_197;
    emit M_197Changed();
}

bool ModbusControl::M_250() const
{
    return m_M_250;
}

void ModbusControl::setM_250(bool newM_250)
{
    if (m_M_250 == newM_250)
        return;
    m_M_250 = newM_250;
    emit M_250Changed();
}

bool ModbusControl::M_251() const
{
    return m_M_251;
}

void ModbusControl::setM_251(bool newM_251)
{
    if (m_M_251 == newM_251)
        return;
    m_M_251 = newM_251;
    emit M_251Changed();
}

bool ModbusControl::M_252() const
{
    return m_M_252;
}

void ModbusControl::setM_252(bool newM_252)
{
    if (m_M_252 == newM_252)
        return;
    m_M_252 = newM_252;
    emit M_252Changed();
}

QString ModbusControl::Mechine_Saws_Mode() const
{
    return m_Mechine_Saws_Mode;
}

void ModbusControl::setMechine_Saws_Mode(const QString &newMechine_Saws_Mode)
{
    if (m_Mechine_Saws_Mode == newMechine_Saws_Mode)
        return;
    m_Mechine_Saws_Mode = newMechine_Saws_Mode;
    emit Mechine_Saws_ModeChanged();
}

bool ModbusControl::M_390() const
{
    return m_M_390;
}

void ModbusControl::setM_390(bool newM_390)
{
    if (m_M_390 == newM_390)
        return;
    m_M_390 = newM_390;
    emit M_390Changed();
}

bool ModbusControl::M_391() const
{
    return m_M_391;
}

void ModbusControl::setM_391(bool newM_391)
{
    if (m_M_391 == newM_391)
        return;
    m_M_391 = newM_391;
    emit M_391Changed();
}

bool ModbusControl::M_394() const
{
    return m_M_394;
}

void ModbusControl::setM_394(bool newM_394)
{
    if (m_M_394 == newM_394)
        return;
    m_M_394 = newM_394;
    emit M_394Changed();
}

bool ModbusControl::M_239() const
{
    return m_M_239;
}

void ModbusControl::setM_239(bool newM_239)
{
    if (m_M_239 == newM_239)
        return;
    m_M_239 = newM_239;
    emit M_239Changed();
}

bool ModbusControl::M_240() const
{
    return m_M_240;
}

void ModbusControl::setM_240(bool newM_240)
{
    if (m_M_240 == newM_240)
        return;
    m_M_240 = newM_240;
    emit M_240Changed();
}

bool ModbusControl::M_241() const
{
    return m_M_241;
}

void ModbusControl::setM_241(bool newM_241)
{
    if (m_M_241 == newM_241)
        return;
    m_M_241 = newM_241;
    emit M_241Changed();
}

bool ModbusControl::M_528() const
{
    return m_M_528;
}

void ModbusControl::setM_528(bool newM_528)
{
    if (m_M_528 == newM_528)
        return;
    m_M_528 = newM_528;
    emit M_528Changed();
}

bool ModbusControl::M_510() const
{
    return m_M_510;
}

void ModbusControl::setM_510(bool newM_510)
{
    if (m_M_510 == newM_510)
        return;
    m_M_510 = newM_510;
    emit M_510Changed();
}

bool ModbusControl::M_509() const
{
    return m_M_509;
}

void ModbusControl::setM_509(bool newM_509)
{
    if (m_M_509 == newM_509)
        return;
    m_M_509 = newM_509;
    emit M_509Changed();
}

bool ModbusControl::M_400() const
{
    return m_M_400;
}

void ModbusControl::setM_400(bool newM_400)
{
    if (m_M_400 == newM_400)
        return;
    m_M_400 = newM_400;
    emit M_400Changed();
}

bool ModbusControl::M_398() const
{
    return m_M_398;
}

void ModbusControl::setM_398(bool newM_398)
{
    if (m_M_398 == newM_398)
        return;
    m_M_398 = newM_398;
    emit M_398Changed();
}

bool ModbusControl::M_397() const
{
    return m_M_397;
}

void ModbusControl::setM_397(bool newM_397)
{
    if (m_M_397 == newM_397)
        return;
    m_M_397 = newM_397;
    emit M_397Changed();
}

bool ModbusControl::M_396() const
{
    return m_M_396;
}

void ModbusControl::setM_396(bool newM_396)
{
    if (m_M_396 == newM_396)
        return;
    m_M_396 = newM_396;
    emit M_396Changed();
}

bool ModbusControl::M_500() const
{
    return m_M_500;
}

void ModbusControl::setM_500(bool newM_500)
{
    if (m_M_500 == newM_500)
        return;
    m_M_500 = newM_500;
    emit M_500Changed();
}

bool ModbusControl::M_501() const
{
    return m_M_501;
}

void ModbusControl::setM_501(bool newM_501)
{
    if (m_M_501 == newM_501)
        return;
    m_M_501 = newM_501;
    emit M_501Changed();
}

bool ModbusControl::M_392() const
{
    return m_M_392;
}

void ModbusControl::setM_392(bool newM_392)
{
    if (m_M_392 == newM_392)
        return;
    m_M_392 = newM_392;
    emit M_392Changed();
}

bool ModbusControl::M_393() const
{
    return m_M_393;
}

void ModbusControl::setM_393(bool newM_393)
{
    if (m_M_393 == newM_393)
        return;
    m_M_393 = newM_393;
    emit M_393Changed();
}

bool ModbusControl::M_502() const
{
    return m_M_502;
}

void ModbusControl::setM_502(bool newM_502)
{
    if (m_M_502 == newM_502)
        return;
    m_M_502 = newM_502;
    emit M_502Changed();
}

bool ModbusControl::M_503() const
{
    return m_M_503;
}

void ModbusControl::setM_503(bool newM_503)
{
    if (m_M_503 == newM_503)
        return;
    m_M_503 = newM_503;
    emit M_503Changed();
}

bool ModbusControl::M_529() const
{
    return m_M_529;
}

void ModbusControl::setM_529(bool newM_529)
{
    if (m_M_529 == newM_529)
        return;
    m_M_529 = newM_529;
    emit M_529Changed();
}

bool ModbusControl::M_530() const
{
    return m_M_530;
}

void ModbusControl::setM_530(bool newM_530)
{
    if (m_M_530 == newM_530)
        return;
    m_M_530 = newM_530;
    emit M_530Changed();
}

bool ModbusControl::M_505() const
{
    return m_M_505;
}

void ModbusControl::setM_505(bool newM_505)
{
    if (m_M_505 == newM_505)
        return;
    m_M_505 = newM_505;
    emit M_505Changed();
}

bool ModbusControl::M_506() const
{
    return m_M_506;
}

void ModbusControl::setM_506(bool newM_506)
{
    if (m_M_506 == newM_506)
        return;
    m_M_506 = newM_506;
    emit M_506Changed();
}

bool ModbusControl::M_507() const
{
    return m_M_507;
}

void ModbusControl::setM_507(bool newM_507)
{
    if (m_M_507 == newM_507)
        return;
    m_M_507 = newM_507;
    emit M_507Changed();
}

bool ModbusControl::M_508() const
{
    return m_M_508;
}

void ModbusControl::setM_508(bool newM_508)
{
    if (m_M_508 == newM_508)
        return;
    m_M_508 = newM_508;
    emit M_508Changed();
}

bool ModbusControl::M_6() const
{
    return m_M_6;
}

void ModbusControl::setM_6(bool newM_6)
{
    if (m_M_6 == newM_6)
        return;
    m_M_6 = newM_6;
    emit M_6Changed();
}

bool ModbusControl::M_7() const
{
    return m_M_7;
}

void ModbusControl::setM_7(bool newM_7)
{
    if (m_M_7 == newM_7)
        return;
    m_M_7 = newM_7;
    emit M_7Changed();
}

bool ModbusControl::M_9() const
{
    return m_M_9;
}

void ModbusControl::setM_9(bool newM_9)
{
    if (m_M_9 == newM_9)
        return;
    m_M_9 = newM_9;
    emit M_9Changed();
}

bool ModbusControl::M_96() const
{
    return m_M_96;
}

void ModbusControl::setM_96(bool newM_96)
{
    if (m_M_96 == newM_96)
        return;
    m_M_96 = newM_96;
    emit M_96Changed();
}

bool ModbusControl::M_97() const
{
    return m_M_97;
}

void ModbusControl::setM_97(bool newM_97)
{
    if (m_M_97 == newM_97)
        return;
    m_M_97 = newM_97;
    emit M_97Changed();
}

bool ModbusControl::M_98() const
{
    return m_M_98;
}

void ModbusControl::setM_98(bool newM_98)
{
    if (m_M_98 == newM_98)
        return;
    m_M_98 = newM_98;
    emit M_98Changed();
}

bool ModbusControl::M_103() const
{
    return m_M_103;
}

void ModbusControl::setM_103(bool newM_103)
{
    if (m_M_103 == newM_103)
        return;
    m_M_103 = newM_103;
    emit M_103Changed();
}

bool ModbusControl::M_2() const
{
    return m_M_2;
}

void ModbusControl::setM_2(bool newM_2)
{
    if (m_M_2 == newM_2)
        return;
    m_M_2 = newM_2;
    emit M_2Changed();
}

bool ModbusControl::M_3() const
{
    return m_M_3;
}

void ModbusControl::setM_3(bool newM_3)
{
    if (m_M_3 == newM_3)
        return;
    m_M_3 = newM_3;
    emit M_3Changed();
}

bool ModbusControl::M_31() const
{
    return m_M_31;
}

void ModbusControl::setM_31(bool newM_31)
{
    if (m_M_31 == newM_31)
        return;
    m_M_31 = newM_31;
    emit M_31Changed();
}

bool ModbusControl::M_36() const
{
    return m_M_36;
}

void ModbusControl::setM_36(bool newM_36)
{
    if (m_M_36 == newM_36)
        return;
    m_M_36 = newM_36;
    emit M_36Changed();
}

bool ModbusControl::M_243() const
{
    return m_M_243;
}

void ModbusControl::setM_243(bool newM_243)
{
    if (m_M_243 == newM_243)
        return;
    m_M_243 = newM_243;
    emit M_243Changed();
}

bool ModbusControl::M_244() const
{
    return m_M_244;
}

void ModbusControl::setM_244(bool newM_244)
{
    if (m_M_244 == newM_244)
        return;
    m_M_244 = newM_244;
    emit M_244Changed();
}

bool ModbusControl::M_245() const
{
    return m_M_245;
}

void ModbusControl::setM_245(bool newM_245)
{
    if (m_M_245 == newM_245)
        return;
    m_M_245 = newM_245;
    emit M_245Changed();
}

bool ModbusControl::M_515() const
{
    return m_M_515;
}

void ModbusControl::setM_515(bool newM_515)
{
    if (m_M_515 == newM_515)
        return;
    m_M_515 = newM_515;
    emit M_515Changed();
}

bool ModbusControl::M_516() const
{
    return m_M_516;
}

void ModbusControl::setM_516(bool newM_516)
{
    if (m_M_516 == newM_516)
        return;
    m_M_516 = newM_516;
    emit M_516Changed();
}

bool ModbusControl::M_517() const
{
    return m_M_517;
}

void ModbusControl::setM_517(bool newM_517)
{
    if (m_M_517 == newM_517)
        return;
    m_M_517 = newM_517;
    emit M_517Changed();
}

bool ModbusControl::M_512() const
{
    return m_M_512;
}

void ModbusControl::setM_512(bool newM_512)
{
    if (m_M_512 == newM_512)
        return;
    m_M_512 = newM_512;
    emit M_512Changed();
}

bool ModbusControl::M_514() const
{
    return m_M_514;
}

void ModbusControl::setM_514(bool newM_514)
{
    if (m_M_514 == newM_514)
        return;
    m_M_514 = newM_514;
    emit M_514Changed();
}

bool ModbusControl::M_499() const
{
    return m_M_499;
}

void ModbusControl::setM_499(bool newM_499)
{
    if (m_M_499 == newM_499)
        return;
    m_M_499 = newM_499;
    emit M_499Changed();
}

bool ModbusControl::M_421() const
{
    return m_M_421;
}

void ModbusControl::setM_421(bool newM_421)
{
    if (m_M_421 == newM_421)
        return;
    m_M_421 = newM_421;
    emit M_421Changed();
}

bool ModbusControl::M_401() const
{
    return m_M_401;
}

void ModbusControl::setM_401(bool newM_401)
{
    if (m_M_401 == newM_401)
        return;
    m_M_401 = newM_401;
    emit M_401Changed();
}

bool ModbusControl::M_402() const
{
    return m_M_402;
}

void ModbusControl::setM_402(bool newM_402)
{
    if (m_M_402 == newM_402)
        return;
    m_M_402 = newM_402;
    emit M_402Changed();
}

bool ModbusControl::M_403() const
{
    return m_M_403;
}

void ModbusControl::setM_403(bool newM_403)
{
    if (m_M_403 == newM_403)
        return;
    m_M_403 = newM_403;
    emit M_403Changed();
}

bool ModbusControl::M_404() const
{
    return m_M_404;
}

void ModbusControl::setM_404(bool newM_404)
{
    if (m_M_404 == newM_404)
        return;
    m_M_404 = newM_404;
    emit M_404Changed();
}

bool ModbusControl::M_405() const
{
    return m_M_405;
}

void ModbusControl::setM_405(bool newM_405)
{
    if (m_M_405 == newM_405)
        return;
    m_M_405 = newM_405;
    emit M_405Changed();
}

bool ModbusControl::M_406() const
{
    return m_M_406;
}

void ModbusControl::setM_406(bool newM_406)
{
    if (m_M_406 == newM_406)
        return;
    m_M_406 = newM_406;
    emit M_406Changed();
}

bool ModbusControl::M_407() const
{
    return m_M_407;
}

void ModbusControl::setM_407(bool newM_407)
{
    if (m_M_407 == newM_407)
        return;
    m_M_407 = newM_407;
    emit M_407Changed();
}

bool ModbusControl::M_408() const
{
    return m_M_408;
}

void ModbusControl::setM_408(bool newM_408)
{
    if (m_M_408 == newM_408)
        return;
    m_M_408 = newM_408;
    emit M_408Changed();
}

bool ModbusControl::M_409() const
{
    return m_M_409;
}

void ModbusControl::setM_409(bool newM_409)
{
    if (m_M_409 == newM_409)
        return;
    m_M_409 = newM_409;
    emit M_409Changed();
}

bool ModbusControl::M_410() const
{
    return m_M_410;
}

void ModbusControl::setM_410(bool newM_410)
{
    if (m_M_410 == newM_410)
        return;
    m_M_410 = newM_410;
    emit M_410Changed();
}

bool ModbusControl::M_411() const
{
    return m_M_411;
}

void ModbusControl::setM_411(bool newM_411)
{
    if (m_M_411 == newM_411)
        return;
    m_M_411 = newM_411;
    emit M_411Changed();
}

bool ModbusControl::M_412() const
{
    return m_M_412;
}

void ModbusControl::setM_412(bool newM_412)
{
    if (m_M_412 == newM_412)
        return;
    m_M_412 = newM_412;
    emit M_412Changed();
}

bool ModbusControl::M_413() const
{
    return m_M_413;
}

void ModbusControl::setM_413(bool newM_413)
{
    if (m_M_413 == newM_413)
        return;
    m_M_413 = newM_413;
    emit M_413Changed();
}

bool ModbusControl::M_414() const
{
    return m_M_414;
}

void ModbusControl::setM_414(bool newM_414)
{
    if (m_M_414 == newM_414)
        return;
    m_M_414 = newM_414;
    emit M_414Changed();
}

bool ModbusControl::M_415() const
{
    return m_M_415;
}

void ModbusControl::setM_415(bool newM_415)
{
    if (m_M_415 == newM_415)
        return;
    m_M_415 = newM_415;
    emit M_415Changed();
}

bool ModbusControl::M_416() const
{
    return m_M_416;
}

void ModbusControl::setM_416(bool newM_416)
{
    if (m_M_416 == newM_416)
        return;
    m_M_416 = newM_416;
    emit M_416Changed();
}

bool ModbusControl::M_417() const
{
    return m_M_417;
}

void ModbusControl::setM_417(bool newM_417)
{
    if (m_M_417 == newM_417)
        return;
    m_M_417 = newM_417;
    emit M_417Changed();
}

bool ModbusControl::M_418() const
{
    return m_M_418;
}

void ModbusControl::setM_418(bool newM_418)
{
    if (m_M_418 == newM_418)
        return;
    m_M_418 = newM_418;
    emit M_418Changed();
}

bool ModbusControl::M_419() const
{
    return m_M_419;
}

void ModbusControl::setM_419(bool newM_419)
{
    if (m_M_419 == newM_419)
        return;
    m_M_419 = newM_419;
    emit M_419Changed();
}

bool ModbusControl::M_420() const
{
    return m_M_420;
}

void ModbusControl::setM_420(bool newM_420)
{
    if (m_M_420 == newM_420)
        return;
    m_M_420 = newM_420;
    emit M_420Changed();
}

bool ModbusControl::M_511() const
{
    return m_M_511;
}

void ModbusControl::setM_511(bool newM_511)
{
    if (m_M_511 == newM_511)
        return;
    m_M_511 = newM_511;
    emit M_511Changed();
}

QString ModbusControl::Printer_Material_Length() const
{
    return m_Printer_Material_Length;
}

void ModbusControl::setPrinter_Material_Length(const QString &newPrinter_Material_Length)
{
    if (m_Printer_Material_Length == newPrinter_Material_Length)
        return;
    m_Printer_Material_Length = newPrinter_Material_Length;
    emit Printer_Material_LengthChanged();
}

QString ModbusControl::Printer_Material_Height() const
{
    return m_Printer_Material_Height;
}

void ModbusControl::setPrinter_Material_Height(const QString &newPrinter_Material_Height)
{
    if (m_Printer_Material_Height == newPrinter_Material_Height)
        return;
    m_Printer_Material_Height = newPrinter_Material_Height;
    emit Printer_Material_HeightChanged();
}

bool ModbusControl::M_135() const
{
    return m_M_135;
}

void ModbusControl::setM_135(bool newM_135)
{
    if (m_M_135 == newM_135)
        return;
    m_M_135 = newM_135;
    emit M_135Changed();
}

bool ModbusControl::M_61() const
{
    return m_M_61;
}

void ModbusControl::setM_61(bool newM_61)
{
    if (m_M_61 == newM_61)
        return;
    m_M_61 = newM_61;
    emit M_61Changed();
}

QString ModbusControl::QR_List_CutLength_1() const
{
    return m_QR_List_CutLength_1;
}

void ModbusControl::setQR_List_CutLength_1(const QString &newQR_List_CutLength_1)
{
    if (m_QR_List_CutLength_1 == newQR_List_CutLength_1)
        return;
    m_QR_List_CutLength_1 = newQR_List_CutLength_1;
    emit QR_List_CutLength_1Changed();
}

QString ModbusControl::QR_List_CutLength_2() const
{
    return m_QR_List_CutLength_2;
}

void ModbusControl::setQR_List_CutLength_2(const QString &newQR_List_CutLength_2)
{
    if (m_QR_List_CutLength_2 == newQR_List_CutLength_2)
        return;
    m_QR_List_CutLength_2 = newQR_List_CutLength_2;
    emit QR_List_CutLength_1Changed();
}

QString ModbusControl::QR_List_CutLength_3() const
{
    return m_QR_List_CutLength_3;
}

void ModbusControl::setQR_List_CutLength_3(const QString &newQR_List_CutLength_3)
{
    if (m_QR_List_CutLength_3 == newQR_List_CutLength_3)
        return;
    m_QR_List_CutLength_3 = newQR_List_CutLength_3;
    emit QR_List_CutLength_1Changed();
}

QString ModbusControl::QR_List_CutLength_4() const
{
    return m_QR_List_CutLength_4;
}

void ModbusControl::setQR_List_CutLength_4(const QString &newQR_List_CutLength_4)
{
    if (m_QR_List_CutLength_4 == newQR_List_CutLength_4)
        return;
    m_QR_List_CutLength_4 = newQR_List_CutLength_4;
    emit QR_List_CutLength_1Changed();
}

QString ModbusControl::QR_List_CutLength_5() const
{
    return m_QR_List_CutLength_5;
}

void ModbusControl::setQR_List_CutLength_5(const QString &newQR_List_CutLength_5)
{
    if (m_QR_List_CutLength_5 == newQR_List_CutLength_5)
        return;
    m_QR_List_CutLength_5 = newQR_List_CutLength_5;
    emit QR_List_CutLength_1Changed();
}

QString ModbusControl::QR_List_CutLength_6() const
{
    return m_QR_List_CutLength_6;
}

void ModbusControl::setQR_List_CutLength_6(const QString &newQR_List_CutLength_6)
{
    if (m_QR_List_CutLength_6 == newQR_List_CutLength_6)
        return;
    m_QR_List_CutLength_6 = newQR_List_CutLength_6;
    emit QR_List_CutLength_1Changed();
}

QString ModbusControl::QR_List_CutLength_7() const
{
    return m_QR_List_CutLength_7;
}

void ModbusControl::setQR_List_CutLength_7(const QString &newQR_List_CutLength_7)
{
    if (m_QR_List_CutLength_7 == newQR_List_CutLength_7)
        return;
    m_QR_List_CutLength_7 = newQR_List_CutLength_7;
    emit QR_List_CutLength_1Changed();
}

QString ModbusControl::QR_List_CutLength_8() const
{
    return m_QR_List_CutLength_8;
}

void ModbusControl::setQR_List_CutLength_8(const QString &newQR_List_CutLength_8)
{
    if (m_QR_List_CutLength_8 == newQR_List_CutLength_8)
        return;
    m_QR_List_CutLength_8 = newQR_List_CutLength_8;
    emit QR_List_CutLength_1Changed();
}

QString ModbusControl::QR_List_CutLength_9() const
{
    return m_QR_List_CutLength_9;
}

void ModbusControl::setQR_List_CutLength_9(const QString &newQR_List_CutLength_9)
{
    if (m_QR_List_CutLength_9 == newQR_List_CutLength_9)
        return;
    m_QR_List_CutLength_9 = newQR_List_CutLength_9;
    emit QR_List_CutLength_1Changed();
}

QString ModbusControl::QR_List_CutLength_10() const
{
    return m_QR_List_CutLength_10;
}

void ModbusControl::setQR_List_CutLength_10(const QString &newQR_List_CutLength_10)
{
    if (m_QR_List_CutLength_10 == newQR_List_CutLength_10)
        return;
    m_QR_List_CutLength_10 = newQR_List_CutLength_10;
    emit QR_List_CutLength_1Changed();
}

QString ModbusControl::QR_List_CutLength_11() const
{
    return m_QR_List_CutLength_11;
}

void ModbusControl::setQR_List_CutLength_11(const QString &newQR_List_CutLength_11)
{
    if (m_QR_List_CutLength_11 == newQR_List_CutLength_11)
        return;
    m_QR_List_CutLength_11 = newQR_List_CutLength_11;
    emit QR_List_CutLength_1Changed();
}

QString ModbusControl::QR_List_CutLength_12() const
{
    return m_QR_List_CutLength_12;
}

void ModbusControl::setQR_List_CutLength_12(const QString &newQR_List_CutLength_12)
{
    if (m_QR_List_CutLength_12 == newQR_List_CutLength_12)
        return;
    m_QR_List_CutLength_12 = newQR_List_CutLength_12;
    emit QR_List_CutLength_1Changed();
}

QString ModbusControl::QR_List_CutLength_13() const
{
    return m_QR_List_CutLength_13;
}

void ModbusControl::setQR_List_CutLength_13(const QString &newQR_List_CutLength_13)
{
    if (m_QR_List_CutLength_13 == newQR_List_CutLength_13)
        return;
    m_QR_List_CutLength_13 = newQR_List_CutLength_13;
    emit QR_List_CutLength_1Changed();
}

QString ModbusControl::QR_List_CutLength_14() const
{
    return m_QR_List_CutLength_14;
}

void ModbusControl::setQR_List_CutLength_14(const QString &newQR_List_CutLength_14)
{
    if (m_QR_List_CutLength_14 == newQR_List_CutLength_14)
        return;
    m_QR_List_CutLength_14 = newQR_List_CutLength_14;
    emit QR_List_CutLength_1Changed();
}

QString ModbusControl::QR_List_CutLength_15() const
{
    return m_QR_List_CutLength_15;
}

void ModbusControl::setQR_List_CutLength_15(const QString &newQR_List_CutLength_15)
{
    if (m_QR_List_CutLength_15 == newQR_List_CutLength_15)
        return;
    m_QR_List_CutLength_15 = newQR_List_CutLength_15;
    emit QR_List_CutLength_1Changed();
}

QString ModbusControl::QR_List_CutLength_16() const
{
    return m_QR_List_CutLength_16;
}

void ModbusControl::setQR_List_CutLength_16(const QString &newQR_List_CutLength_16)
{
    if (m_QR_List_CutLength_16 == newQR_List_CutLength_16)
        return;
    m_QR_List_CutLength_16 = newQR_List_CutLength_16;
    emit QR_List_CutLength_1Changed();
}

QString ModbusControl::QR_List_CutLength_17() const
{
    return m_QR_List_CutLength_17;
}

void ModbusControl::setQR_List_CutLength_17(const QString &newQR_List_CutLength_17)
{
    if (m_QR_List_CutLength_17 == newQR_List_CutLength_17)
        return;
    m_QR_List_CutLength_17 = newQR_List_CutLength_17;
    emit QR_List_CutLength_1Changed();
}

QString ModbusControl::QR_List_CutLength_18() const
{
    return m_QR_List_CutLength_18;
}

void ModbusControl::setQR_List_CutLength_18(const QString &newQR_List_CutLength_18)
{
    if (m_QR_List_CutLength_18 == newQR_List_CutLength_18)
        return;
    m_QR_List_CutLength_18 = newQR_List_CutLength_18;
    emit QR_List_CutLength_1Changed();
}

QString ModbusControl::QR_List_CutLength_19() const
{
    return m_QR_List_CutLength_19;
}

void ModbusControl::setQR_List_CutLength_19(const QString &newQR_List_CutLength_19)
{
    if (m_QR_List_CutLength_19 == newQR_List_CutLength_19)
        return;
    m_QR_List_CutLength_19 = newQR_List_CutLength_19;
    emit QR_List_CutLength_1Changed();
}

QString ModbusControl::QR_List_CutLength_20() const
{
    return m_QR_List_CutLength_20;
}

void ModbusControl::setQR_List_CutLength_20(const QString &newQR_List_CutLength_20)
{
    if (m_QR_List_CutLength_20 == newQR_List_CutLength_20)
        return;
    m_QR_List_CutLength_20 = newQR_List_CutLength_20;
    emit QR_List_CutLength_1Changed();
}

QString ModbusControl::QR_List_CutCount_1() const
{
    return m_QR_List_CutCount_1;
}

void ModbusControl::setQR_List_CutCount_1(const QString &newQR_List_CutCount_1)
{
    if (m_QR_List_CutCount_1 == newQR_List_CutCount_1)
        return;
    m_QR_List_CutCount_1 = newQR_List_CutCount_1;
    emit QR_List_CutCount_1Changed();
}

QString ModbusControl::QR_List_CutCount_2() const
{
    return m_QR_List_CutCount_2;
}

void ModbusControl::setQR_List_CutCount_2(const QString &newQR_List_CutCount_2)
{
    if (m_QR_List_CutCount_2 == newQR_List_CutCount_2)
        return;
    m_QR_List_CutCount_2 = newQR_List_CutCount_2;
    emit QR_List_CutCount_2Changed();
}

QString ModbusControl::QR_List_CutCount_3() const
{
    return m_QR_List_CutCount_3;
}

void ModbusControl::setQR_List_CutCount_3(const QString &newQR_List_CutCount_3)
{
    if (m_QR_List_CutCount_3 == newQR_List_CutCount_3)
        return;
    m_QR_List_CutCount_3 = newQR_List_CutCount_3;
    emit QR_List_CutCount_3Changed();
}

QString ModbusControl::QR_List_CutCount_4() const
{
    return m_QR_List_CutCount_4;
}

void ModbusControl::setQR_List_CutCount_4(const QString &newQR_List_CutCount_4)
{
    if (m_QR_List_CutCount_4 == newQR_List_CutCount_4)
        return;
    m_QR_List_CutCount_4 = newQR_List_CutCount_4;
    emit QR_List_CutCount_4Changed();
}

QString ModbusControl::QR_List_CutCount_5() const
{
    return m_QR_List_CutCount_5;
}

void ModbusControl::setQR_List_CutCount_5(const QString &newQR_List_CutCount_5)
{
    if (m_QR_List_CutCount_5 == newQR_List_CutCount_5)
        return;
    m_QR_List_CutCount_5 = newQR_List_CutCount_5;
    emit QR_List_CutCount_5Changed();
}

QString ModbusControl::QR_List_CutCount_6() const
{
    return m_QR_List_CutCount_6;
}

void ModbusControl::setQR_List_CutCount_6(const QString &newQR_List_CutCount_6)
{
    if (m_QR_List_CutCount_6 == newQR_List_CutCount_6)
        return;
    m_QR_List_CutCount_6 = newQR_List_CutCount_6;
    emit QR_List_CutCount_6Changed();
}

QString ModbusControl::QR_List_CutCount_7() const
{
    return m_QR_List_CutCount_7;
}

void ModbusControl::setQR_List_CutCount_7(const QString &newQR_List_CutCount_7)
{
    if (m_QR_List_CutCount_7 == newQR_List_CutCount_7)
        return;
    m_QR_List_CutCount_7 = newQR_List_CutCount_7;
    emit QR_List_CutCount_7Changed();
}

QString ModbusControl::QR_List_CutCount_8() const
{
    return m_QR_List_CutCount_8;
}

void ModbusControl::setQR_List_CutCount_8(const QString &newQR_List_CutCount_8)
{
    if (m_QR_List_CutCount_8 == newQR_List_CutCount_8)
        return;
    m_QR_List_CutCount_8 = newQR_List_CutCount_8;
    emit QR_List_CutCount_8Changed();
}

QString ModbusControl::QR_List_CutCount_9() const
{
    return m_QR_List_CutCount_9;
}

void ModbusControl::setQR_List_CutCount_9(const QString &newQR_List_CutCount_9)
{
    if (m_QR_List_CutCount_9 == newQR_List_CutCount_9)
        return;
    m_QR_List_CutCount_9 = newQR_List_CutCount_9;
    emit QR_List_CutCount_9Changed();
}

QString ModbusControl::QR_List_CutCount_10() const
{
    return m_QR_List_CutCount_10;
}

void ModbusControl::setQR_List_CutCount_10(const QString &newQR_List_CutCount_10)
{
    if (m_QR_List_CutCount_10 == newQR_List_CutCount_10)
        return;
    m_QR_List_CutCount_10 = newQR_List_CutCount_10;
    emit QR_List_CutCount_10Changed();
}

QString ModbusControl::QR_List_CutCount_11() const
{
    return m_QR_List_CutCount_11;
}

void ModbusControl::setQR_List_CutCount_11(const QString &newQR_List_CutCount_11)
{
    if (m_QR_List_CutCount_11 == newQR_List_CutCount_11)
        return;
    m_QR_List_CutCount_11 = newQR_List_CutCount_11;
    emit QR_List_CutCount_11Changed();
}

QString ModbusControl::QR_List_CutCount_12() const
{
    return m_QR_List_CutCount_12;
}

void ModbusControl::setQR_List_CutCount_12(const QString &newQR_List_CutCount_12)
{
    if (m_QR_List_CutCount_12 == newQR_List_CutCount_12)
        return;
    m_QR_List_CutCount_12 = newQR_List_CutCount_12;
    emit QR_List_CutCount_12Changed();
}

QString ModbusControl::QR_List_CutCount_13() const
{
    return m_QR_List_CutCount_13;
}

void ModbusControl::setQR_List_CutCount_13(const QString &newQR_List_CutCount_13)
{
    if (m_QR_List_CutCount_13 == newQR_List_CutCount_13)
        return;
    m_QR_List_CutCount_13 = newQR_List_CutCount_13;
    emit QR_List_CutCount_13Changed();
}

QString ModbusControl::QR_List_CutCount_14() const
{
    return m_QR_List_CutCount_14;
}

void ModbusControl::setQR_List_CutCount_14(const QString &newQR_List_CutCount_14)
{
    if (m_QR_List_CutCount_14 == newQR_List_CutCount_14)
        return;
    m_QR_List_CutCount_14 = newQR_List_CutCount_14;
    emit QR_List_CutCount_14Changed();
}

QString ModbusControl::QR_List_CutCount_15() const
{
    return m_QR_List_CutCount_15;
}

void ModbusControl::setQR_List_CutCount_15(const QString &newQR_List_CutCount_15)
{
    if (m_QR_List_CutCount_15 == newQR_List_CutCount_15)
        return;
    m_QR_List_CutCount_15 = newQR_List_CutCount_15;
    emit QR_List_CutCount_15Changed();
}

QString ModbusControl::QR_List_CutCount_16() const
{
    return m_QR_List_CutCount_16;
}

void ModbusControl::setQR_List_CutCount_16(const QString &newQR_List_CutCount_16)
{
    if (m_QR_List_CutCount_16 == newQR_List_CutCount_16)
        return;
    m_QR_List_CutCount_16 = newQR_List_CutCount_16;
    emit QR_List_CutCount_16Changed();
}

QString ModbusControl::QR_List_CutCount_17() const
{
    return m_QR_List_CutCount_17;
}

void ModbusControl::setQR_List_CutCount_17(const QString &newQR_List_CutCount_17)
{
    if (m_QR_List_CutCount_17 == newQR_List_CutCount_17)
        return;
    m_QR_List_CutCount_17 = newQR_List_CutCount_17;
    emit QR_List_CutCount_17Changed();
}

QString ModbusControl::QR_List_CutCount_18() const
{
    return m_QR_List_CutCount_18;
}

void ModbusControl::setQR_List_CutCount_18(const QString &newQR_List_CutCount_18)
{
    if (m_QR_List_CutCount_18 == newQR_List_CutCount_18)
        return;
    m_QR_List_CutCount_18 = newQR_List_CutCount_18;
    emit QR_List_CutCount_18Changed();
}

QString ModbusControl::QR_List_CutCount_19() const
{
    return m_QR_List_CutCount_19;
}

void ModbusControl::setQR_List_CutCount_19(const QString &newQR_List_CutCount_19)
{
    if (m_QR_List_CutCount_19 == newQR_List_CutCount_19)
        return;
    m_QR_List_CutCount_19 = newQR_List_CutCount_19;
    emit QR_List_CutCount_19Changed();
}

QString ModbusControl::QR_List_CutCount_20() const
{
    return m_QR_List_CutCount_20;
}

void ModbusControl::setQR_List_CutCount_20(const QString &newQR_List_CutCount_20)
{
    if (m_QR_List_CutCount_20 == newQR_List_CutCount_20)
        return;
    m_QR_List_CutCount_20 = newQR_List_CutCount_20;
    emit QR_List_CutCount_20Changed();
}

QString ModbusControl::QR_List_WorkedCount_1() const
{
    return m_QR_List_WorkedCount_1;
}

void ModbusControl::setQR_List_WorkedCount_1(const QString &newQR_List_WorkedCount_1)
{
    if (m_QR_List_WorkedCount_1 == newQR_List_WorkedCount_1)
        return;
    m_QR_List_WorkedCount_1 = newQR_List_WorkedCount_1;
    emit QR_List_WorkedCount_1Changed();
}

QString ModbusControl::QR_List_WorkedCount_2() const
{
    return m_QR_List_WorkedCount_2;
}

void ModbusControl::setQR_List_WorkedCount_2(const QString &newQR_List_WorkedCount_2)
{
    if (m_QR_List_WorkedCount_2 == newQR_List_WorkedCount_2)
        return;
    m_QR_List_WorkedCount_2 = newQR_List_WorkedCount_2;
    emit QR_List_WorkedCount_2Changed();
}

QString ModbusControl::QR_List_WorkedCount_3() const
{
    return m_QR_List_WorkedCount_3;
}

void ModbusControl::setQR_List_WorkedCount_3(const QString &newQR_List_WorkedCount_3)
{
    if (m_QR_List_WorkedCount_3 == newQR_List_WorkedCount_3)
        return;
    m_QR_List_WorkedCount_3 = newQR_List_WorkedCount_3;
    emit QR_List_WorkedCount_3Changed();
}

QString ModbusControl::QR_List_WorkedCount_4() const
{
    return m_QR_List_WorkedCount_4;
}

void ModbusControl::setQR_List_WorkedCount_4(const QString &newQR_List_WorkedCount_4)
{
    if (m_QR_List_WorkedCount_4 == newQR_List_WorkedCount_4)
        return;
    m_QR_List_WorkedCount_4 = newQR_List_WorkedCount_4;
    emit QR_List_WorkedCount_4Changed();
}

QString ModbusControl::QR_List_WorkedCount_5() const
{
    return m_QR_List_WorkedCount_5;
}

void ModbusControl::setQR_List_WorkedCount_5(const QString &newQR_List_WorkedCount_5)
{
    if (m_QR_List_WorkedCount_5 == newQR_List_WorkedCount_5)
        return;
    m_QR_List_WorkedCount_5 = newQR_List_WorkedCount_5;
    emit QR_List_WorkedCount_5Changed();
}

QString ModbusControl::QR_List_WorkedCount_6() const
{
    return m_QR_List_WorkedCount_6;
}

void ModbusControl::setQR_List_WorkedCount_6(const QString &newQR_List_WorkedCount_6)
{
    if (m_QR_List_WorkedCount_6 == newQR_List_WorkedCount_6)
        return;
    m_QR_List_WorkedCount_6 = newQR_List_WorkedCount_6;
    emit QR_List_WorkedCount_6Changed();
}

QString ModbusControl::QR_List_WorkedCount_7() const
{
    return m_QR_List_WorkedCount_7;
}

void ModbusControl::setQR_List_WorkedCount_7(const QString &newQR_List_WorkedCount_7)
{
    if (m_QR_List_WorkedCount_7 == newQR_List_WorkedCount_7)
        return;
    m_QR_List_WorkedCount_7 = newQR_List_WorkedCount_7;
    emit QR_List_WorkedCount_7Changed();
}

QString ModbusControl::QR_List_WorkedCount_8() const
{
    return m_QR_List_WorkedCount_8;
}

void ModbusControl::setQR_List_WorkedCount_8(const QString &newQR_List_WorkedCount_8)
{
    if (m_QR_List_WorkedCount_8 == newQR_List_WorkedCount_8)
        return;
    m_QR_List_WorkedCount_8 = newQR_List_WorkedCount_8;
    emit QR_List_WorkedCount_8Changed();
}

QString ModbusControl::QR_List_WorkedCount_9() const
{
    return m_QR_List_WorkedCount_9;
}

void ModbusControl::setQR_List_WorkedCount_9(const QString &newQR_List_WorkedCount_9)
{
    if (m_QR_List_WorkedCount_9 == newQR_List_WorkedCount_9)
        return;
    m_QR_List_WorkedCount_9 = newQR_List_WorkedCount_9;
    emit QR_List_WorkedCount_9Changed();
}

QString ModbusControl::QR_List_WorkedCount_10() const
{
    return m_QR_List_WorkedCount_10;
}

void ModbusControl::setQR_List_WorkedCount_10(const QString &newQR_List_WorkedCount_10)
{
    if (m_QR_List_WorkedCount_10 == newQR_List_WorkedCount_10)
        return;
    m_QR_List_WorkedCount_10 = newQR_List_WorkedCount_10;
    emit QR_List_WorkedCount_10Changed();
}

QString ModbusControl::QR_List_WorkedCount_11() const
{
    return m_QR_List_WorkedCount_11;
}

void ModbusControl::setQR_List_WorkedCount_11(const QString &newQR_List_WorkedCount_11)
{
    if (m_QR_List_WorkedCount_11 == newQR_List_WorkedCount_11)
        return;
    m_QR_List_WorkedCount_11 = newQR_List_WorkedCount_11;
    emit QR_List_WorkedCount_11Changed();
}

QString ModbusControl::QR_List_WorkedCount_12() const
{
    return m_QR_List_WorkedCount_12;
}

void ModbusControl::setQR_List_WorkedCount_12(const QString &newQR_List_WorkedCount_12)
{
    if (m_QR_List_WorkedCount_12 == newQR_List_WorkedCount_12)
        return;
    m_QR_List_WorkedCount_12 = newQR_List_WorkedCount_12;
    emit QR_List_WorkedCount_12Changed();
}

QString ModbusControl::QR_List_WorkedCount_13() const
{
    return m_QR_List_WorkedCount_13;
}

void ModbusControl::setQR_List_WorkedCount_13(const QString &newQR_List_WorkedCount_13)
{
    if (m_QR_List_WorkedCount_13 == newQR_List_WorkedCount_13)
        return;
    m_QR_List_WorkedCount_13 = newQR_List_WorkedCount_13;
    emit QR_List_WorkedCount_13Changed();
}

QString ModbusControl::QR_List_WorkedCount_14() const
{
    return m_QR_List_WorkedCount_14;
}

void ModbusControl::setQR_List_WorkedCount_14(const QString &newQR_List_WorkedCount_14)
{
    if (m_QR_List_WorkedCount_14 == newQR_List_WorkedCount_14)
        return;
    m_QR_List_WorkedCount_14 = newQR_List_WorkedCount_14;
    emit QR_List_WorkedCount_14Changed();
}

QString ModbusControl::QR_List_WorkedCount_15() const
{
    return m_QR_List_WorkedCount_15;
}

void ModbusControl::setQR_List_WorkedCount_15(const QString &newQR_List_WorkedCount_15)
{
    if (m_QR_List_WorkedCount_15 == newQR_List_WorkedCount_15)
        return;
    m_QR_List_WorkedCount_15 = newQR_List_WorkedCount_15;
    emit QR_List_WorkedCount_15Changed();
}

QString ModbusControl::QR_List_WorkedCount_16() const
{
    return m_QR_List_WorkedCount_16;
}

void ModbusControl::setQR_List_WorkedCount_16(const QString &newQR_List_WorkedCount_16)
{
    if (m_QR_List_WorkedCount_16 == newQR_List_WorkedCount_16)
        return;
    m_QR_List_WorkedCount_16 = newQR_List_WorkedCount_16;
    emit QR_List_WorkedCount_16Changed();
}

QString ModbusControl::QR_List_WorkedCount_17() const
{
    return m_QR_List_WorkedCount_17;
}

void ModbusControl::setQR_List_WorkedCount_17(const QString &newQR_List_WorkedCount_17)
{
    if (m_QR_List_WorkedCount_17 == newQR_List_WorkedCount_17)
        return;
    m_QR_List_WorkedCount_17 = newQR_List_WorkedCount_17;
    emit QR_List_WorkedCount_17Changed();
}

QString ModbusControl::QR_List_WorkedCount_18() const
{
    return m_QR_List_WorkedCount_18;
}

void ModbusControl::setQR_List_WorkedCount_18(const QString &newQR_List_WorkedCount_18)
{
    if (m_QR_List_WorkedCount_18 == newQR_List_WorkedCount_18)
        return;
    m_QR_List_WorkedCount_18 = newQR_List_WorkedCount_18;
    emit QR_List_WorkedCount_18Changed();
}

QString ModbusControl::QR_List_WorkedCount_19() const
{
    return m_QR_List_WorkedCount_19;
}

void ModbusControl::setQR_List_WorkedCount_19(const QString &newQR_List_WorkedCount_19)
{
    if (m_QR_List_WorkedCount_19 == newQR_List_WorkedCount_19)
        return;
    m_QR_List_WorkedCount_19 = newQR_List_WorkedCount_19;
    emit QR_List_WorkedCount_19Changed();
}

QString ModbusControl::QR_List_WorkedCount_20() const
{
    return m_QR_List_WorkedCount_20;
}

void ModbusControl::setQR_List_WorkedCount_20(const QString &newQR_List_WorkedCount_20)
{
    if (m_QR_List_WorkedCount_20 == newQR_List_WorkedCount_20)
        return;
    m_QR_List_WorkedCount_20 = newQR_List_WorkedCount_20;
    emit QR_List_WorkedCount_20Changed();
}

QString ModbusControl::QR_List_Left_1() const
{
    return m_QR_List_Left_1;
}

void ModbusControl::setQR_List_Left_1(const QString &newQR_List_Left_1)
{
    if (m_QR_List_Left_1 == newQR_List_Left_1)
        return;
    m_QR_List_Left_1 = newQR_List_Left_1;
    emit QR_List_Left_1Changed();
}

QString ModbusControl::QR_List_Right_1() const
{
    return m_QR_List_Right_1;
}

void ModbusControl::setQR_List_Right_1(const QString &newQR_List_Right_1)
{
    if (m_QR_List_Right_1 == newQR_List_Right_1)
        return;
    m_QR_List_Right_1 = newQR_List_Right_1;
    emit QR_List_Right_1Changed();
}

QString ModbusControl::QR_List_Left_2() const
{
    return m_QR_List_Left_2;
}

void ModbusControl::setQR_List_Left_2(const QString &newQR_List_Left_2)
{
    if (m_QR_List_Left_2 == newQR_List_Left_2)
        return;
    m_QR_List_Left_2 = newQR_List_Left_2;
    emit QR_List_Left_2Changed();
}

QString ModbusControl::QR_List_Right_2() const
{
    return m_QR_List_Right_2;
}

void ModbusControl::setQR_List_Right_2(const QString &newQR_List_Right_2)
{
    if (m_QR_List_Right_2 == newQR_List_Right_2)
        return;
    m_QR_List_Right_2 = newQR_List_Right_2;
    emit QR_List_Right_2Changed();
}

QString ModbusControl::QR_List_Left_3() const
{
    return m_QR_List_Left_3;
}

void ModbusControl::setQR_List_Left_3(const QString &newQR_List_Left_3)
{
    if (m_QR_List_Left_3 == newQR_List_Left_3)
        return;
    m_QR_List_Left_3 = newQR_List_Left_3;
    emit QR_List_Left_3Changed();
}

QString ModbusControl::QR_List_Right_3() const
{
    return m_QR_List_Right_3;
}

void ModbusControl::setQR_List_Right_3(const QString &newQR_List_Right_3)
{
    if (m_QR_List_Right_3 == newQR_List_Right_3)
        return;
    m_QR_List_Right_3 = newQR_List_Right_3;
    emit QR_List_Right_3Changed();
}

QString ModbusControl::QR_List_Left_4() const
{
    return m_QR_List_Left_4;
}

void ModbusControl::setQR_List_Left_4(const QString &newQR_List_Left_4)
{
    if (m_QR_List_Left_4 == newQR_List_Left_4)
        return;
    m_QR_List_Left_4 = newQR_List_Left_4;
    emit QR_List_Left_4Changed();
}

QString ModbusControl::QR_List_Right_4() const
{
    return m_QR_List_Right_4;
}

void ModbusControl::setQR_List_Right_4(const QString &newQR_List_Right_4)
{
    if (m_QR_List_Right_4 == newQR_List_Right_4)
        return;
    m_QR_List_Right_4 = newQR_List_Right_4;
    emit QR_List_Right_4Changed();
}

QString ModbusControl::QR_List_Left_5() const
{
    return m_QR_List_Left_5;
}

void ModbusControl::setQR_List_Left_5(const QString &newQR_List_Left_5)
{
    if (m_QR_List_Left_5 == newQR_List_Left_5)
        return;
    m_QR_List_Left_5 = newQR_List_Left_5;
    emit QR_List_Left_5Changed();
}

QString ModbusControl::QR_List_Right_5() const
{
    return m_QR_List_Right_5;
}

void ModbusControl::setQR_List_Right_5(const QString &newQR_List_Right_5)
{
    if (m_QR_List_Right_5 == newQR_List_Right_5)
        return;
    m_QR_List_Right_5 = newQR_List_Right_5;
    emit QR_List_Right_5Changed();
}

QString ModbusControl::QR_List_Left_6() const
{
    return m_QR_List_Left_6;
}

void ModbusControl::setQR_List_Left_6(const QString &newQR_List_Left_6)
{
    if (m_QR_List_Left_6 == newQR_List_Left_6)
        return;
    m_QR_List_Left_6 = newQR_List_Left_6;
    emit QR_List_Left_6Changed();
}

QString ModbusControl::QR_List_Right_6() const
{
    return m_QR_List_Right_6;
}

void ModbusControl::setQR_List_Right_6(const QString &newQR_List_Right_6)
{
    if (m_QR_List_Right_6 == newQR_List_Right_6)
        return;
    m_QR_List_Right_6 = newQR_List_Right_6;
    emit QR_List_Right_6Changed();
}

QString ModbusControl::QR_List_Left_7() const
{
    return m_QR_List_Left_7;
}

void ModbusControl::setQR_List_Left_7(const QString &newQR_List_Left_7)
{
    if (m_QR_List_Left_7 == newQR_List_Left_7)
        return;
    m_QR_List_Left_7 = newQR_List_Left_7;
    emit QR_List_Left_7Changed();
}

QString ModbusControl::QR_List_Right_7() const
{
    return m_QR_List_Right_7;
}

void ModbusControl::setQR_List_Right_7(const QString &newQR_List_Right_7)
{
    if (m_QR_List_Right_7 == newQR_List_Right_7)
        return;
    m_QR_List_Right_7 = newQR_List_Right_7;
    emit QR_List_Right_7Changed();
}

QString ModbusControl::QR_List_Left_8() const
{
    return m_QR_List_Left_8;
}

void ModbusControl::setQR_List_Left_8(const QString &newQR_List_Left_8)
{
    if (m_QR_List_Left_8 == newQR_List_Left_8)
        return;
    m_QR_List_Left_8 = newQR_List_Left_8;
    emit QR_List_Left_8Changed();
}

QString ModbusControl::QR_List_Right_8() const
{
    return m_QR_List_Right_8;
}

void ModbusControl::setQR_List_Right_8(const QString &newQR_List_Right_8)
{
    if (m_QR_List_Right_8 == newQR_List_Right_8)
        return;
    m_QR_List_Right_8 = newQR_List_Right_8;
    emit QR_List_Right_8Changed();
}

QString ModbusControl::QR_List_Left_9() const
{
    return m_QR_List_Left_9;
}

void ModbusControl::setQR_List_Left_9(const QString &newQR_List_Left_9)
{
    if (m_QR_List_Left_9 == newQR_List_Left_9)
        return;
    m_QR_List_Left_9 = newQR_List_Left_9;
    emit QR_List_Left_9Changed();
}

QString ModbusControl::QR_List_Right_9() const
{
    return m_QR_List_Right_9;
}

void ModbusControl::setQR_List_Right_9(const QString &newQR_List_Right_9)
{
    if (m_QR_List_Right_9 == newQR_List_Right_9)
        return;
    m_QR_List_Right_9 = newQR_List_Right_9;
    emit QR_List_Right_9Changed();
}

QString ModbusControl::QR_List_Left_10() const
{
    return m_QR_List_Left_10;
}

void ModbusControl::setQR_List_Left_10(const QString &newQR_List_Left_10)
{
    if (m_QR_List_Left_10 == newQR_List_Left_10)
        return;
    m_QR_List_Left_10 = newQR_List_Left_10;
    emit QR_List_Left_10Changed();
}

QString ModbusControl::QR_List_Right_10() const
{
    return m_QR_List_Right_10;
}

void ModbusControl::setQR_List_Right_10(const QString &newQR_List_Right_10)
{
    if (m_QR_List_Right_10 == newQR_List_Right_10)
        return;
    m_QR_List_Right_10 = newQR_List_Right_10;
    emit QR_List_Right_10Changed();
}

QString ModbusControl::QR_List_Left_11() const
{
    return m_QR_List_Left_11;
}

void ModbusControl::setQR_List_Left_11(const QString &newQR_List_Left_11)
{
    if (m_QR_List_Left_11 == newQR_List_Left_11)
        return;
    m_QR_List_Left_11 = newQR_List_Left_11;
    emit QR_List_Left_11Changed();
}

QString ModbusControl::QR_List_Right_11() const
{
    return m_QR_List_Right_11;
}

void ModbusControl::setQR_List_Right_11(const QString &newQR_List_Right_11)
{
    if (m_QR_List_Right_11 == newQR_List_Right_11)
        return;
    m_QR_List_Right_11 = newQR_List_Right_11;
    emit QR_List_Right_11Changed();
}

QString ModbusControl::QR_List_Left_12() const
{
    return m_QR_List_Left_12;
}

void ModbusControl::setQR_List_Left_12(const QString &newQR_List_Left_12)
{
    if (m_QR_List_Left_12 == newQR_List_Left_12)
        return;
    m_QR_List_Left_12 = newQR_List_Left_12;
    emit QR_List_Left_12Changed();
}

QString ModbusControl::QR_List_Right_12() const
{
    return m_QR_List_Right_12;
}

void ModbusControl::setQR_List_Right_12(const QString &newQR_List_Right_12)
{
    if (m_QR_List_Right_12 == newQR_List_Right_12)
        return;
    m_QR_List_Right_12 = newQR_List_Right_12;
    emit QR_List_Right_12Changed();
}

QString ModbusControl::QR_List_Left_13() const
{
    return m_QR_List_Left_13;
}

void ModbusControl::setQR_List_Left_13(const QString &newQR_List_Left_13)
{
    if (m_QR_List_Left_13 == newQR_List_Left_13)
        return;
    m_QR_List_Left_13 = newQR_List_Left_13;
    emit QR_List_Left_13Changed();
}

QString ModbusControl::QR_List_Right_13() const
{
    return m_QR_List_Right_13;
}

void ModbusControl::setQR_List_Right_13(const QString &newQR_List_Right_13)
{
    if (m_QR_List_Right_13 == newQR_List_Right_13)
        return;
    m_QR_List_Right_13 = newQR_List_Right_13;
    emit QR_List_Right_13Changed();
}

QString ModbusControl::QR_List_Left_14() const
{
    return m_QR_List_Left_14;
}

void ModbusControl::setQR_List_Left_14(const QString &newQR_List_Left_14)
{
    if (m_QR_List_Left_14 == newQR_List_Left_14)
        return;
    m_QR_List_Left_14 = newQR_List_Left_14;
    emit QR_List_Left_14Changed();
}

QString ModbusControl::QR_List_Right_14() const
{
    return m_QR_List_Right_14;
}

void ModbusControl::setQR_List_Right_14(const QString &newQR_List_Right_14)
{
    if (m_QR_List_Right_14 == newQR_List_Right_14)
        return;
    m_QR_List_Right_14 = newQR_List_Right_14;
    emit QR_List_Right_14Changed();
}

QString ModbusControl::QR_List_Left_15() const
{
    return m_QR_List_Left_15;
}

void ModbusControl::setQR_List_Left_15(const QString &newQR_List_Left_15)
{
    if (m_QR_List_Left_15 == newQR_List_Left_15)
        return;
    m_QR_List_Left_15 = newQR_List_Left_15;
    emit QR_List_Left_15Changed();
}

QString ModbusControl::QR_List_Right_15() const
{
    return m_QR_List_Right_15;
}

void ModbusControl::setQR_List_Right_15(const QString &newQR_List_Right_15)
{
    if (m_QR_List_Right_15 == newQR_List_Right_15)
        return;
    m_QR_List_Right_15 = newQR_List_Right_15;
    emit QR_List_Right_15Changed();
}

QString ModbusControl::QR_List_Left_16() const
{
    return m_QR_List_Left_16;
}

void ModbusControl::setQR_List_Left_16(const QString &newQR_List_Left_16)
{
    if (m_QR_List_Left_16 == newQR_List_Left_16)
        return;
    m_QR_List_Left_16 = newQR_List_Left_16;
    emit QR_List_Left_16Changed();
}

QString ModbusControl::QR_List_Right_16() const
{
    return m_QR_List_Right_16;
}

void ModbusControl::setQR_List_Right_16(const QString &newQR_List_Right_16)
{
    if (m_QR_List_Right_16 == newQR_List_Right_16)
        return;
    m_QR_List_Right_16 = newQR_List_Right_16;
    emit QR_List_Right_16Changed();
}

QString ModbusControl::QR_List_Left_17() const
{
    return m_QR_List_Left_17;
}

void ModbusControl::setQR_List_Left_17(const QString &newQR_List_Left_17)
{
    if (m_QR_List_Left_17 == newQR_List_Left_17)
        return;
    m_QR_List_Left_17 = newQR_List_Left_17;
    emit QR_List_Left_17Changed();
}

QString ModbusControl::QR_List_Right_17() const
{
    return m_QR_List_Right_17;
}

void ModbusControl::setQR_List_Right_17(const QString &newQR_List_Right_17)
{
    if (m_QR_List_Right_17 == newQR_List_Right_17)
        return;
    m_QR_List_Right_17 = newQR_List_Right_17;
    emit QR_List_Right_17Changed();
}

QString ModbusControl::QR_List_Left_18() const
{
    return m_QR_List_Left_18;
}

void ModbusControl::setQR_List_Left_18(const QString &newQR_List_Left_18)
{
    if (m_QR_List_Left_18 == newQR_List_Left_18)
        return;
    m_QR_List_Left_18 = newQR_List_Left_18;
    emit QR_List_Left_18Changed();
}

QString ModbusControl::QR_List_Right_18() const
{
    return m_QR_List_Right_18;
}

void ModbusControl::setQR_List_Right_18(const QString &newQR_List_Right_18)
{
    if (m_QR_List_Right_18 == newQR_List_Right_18)
        return;
    m_QR_List_Right_18 = newQR_List_Right_18;
    emit QR_List_Right_18Changed();
}

QString ModbusControl::QR_List_Left_19() const
{
    return m_QR_List_Left_19;
}

void ModbusControl::setQR_List_Left_19(const QString &newQR_List_Left_19)
{
    if (m_QR_List_Left_19 == newQR_List_Left_19)
        return;
    m_QR_List_Left_19 = newQR_List_Left_19;
    emit QR_List_Left_19Changed();
}

QString ModbusControl::QR_List_Right_19() const
{
    return m_QR_List_Right_19;
}

void ModbusControl::setQR_List_Right_19(const QString &newQR_List_Right_19)
{
    if (m_QR_List_Right_19 == newQR_List_Right_19)
        return;
    m_QR_List_Right_19 = newQR_List_Right_19;
    emit QR_List_Right_19Changed();
}

QString ModbusControl::QR_List_Left_20() const
{
    return m_QR_List_Left_20;
}

void ModbusControl::setQR_List_Left_20(const QString &newQR_List_Left_20)
{
    if (m_QR_List_Left_20 == newQR_List_Left_20)
        return;
    m_QR_List_Left_20 = newQR_List_Left_20;
    emit QR_List_Left_20Changed();
}

QString ModbusControl::QR_List_Right_20() const
{
    return m_QR_List_Right_20;
}

void ModbusControl::setQR_List_Right_20(const QString &newQR_List_Right_20)
{
    if (m_QR_List_Right_20 == newQR_List_Right_20)
        return;
    m_QR_List_Right_20 = newQR_List_Right_20;
    emit QR_List_Right_20Changed();
}

int ModbusControl::Current_QR_Type() const
{
    return m_Current_QR_Type;
}

void ModbusControl::setCurrent_QR_Type(int newCurrent_QR_Type)
{
    if (m_Current_QR_Type == newCurrent_QR_Type)
        return;
    m_Current_QR_Type = newCurrent_QR_Type;
    emit Current_QR_TypeChanged();
}

QString ModbusControl::Current_List_Order() const
{
    return m_Current_List_Order;
}

void ModbusControl::setCurrent_List_Order(const QString &newCurrent_List_Order)
{
    if (m_Current_List_Order == newCurrent_List_Order)
        return;
    m_Current_List_Order = newCurrent_List_Order;
    emit Current_List_OrderChanged();
}

QString ModbusControl::MaterialLength_Max() const
{
    return m_MaterialLength_Max;
}

void ModbusControl::setMaterialLength_Max(const QString &newMaterialLength_Max)
{
    if (m_MaterialLength_Max == newMaterialLength_Max)
        return;
    m_MaterialLength_Max = newMaterialLength_Max;
    emit MaterialLength_MaxChanged();
}

QString ModbusControl::MaterialLength_Min() const
{
    return m_MaterialLength_Min;
}

void ModbusControl::setMaterialLength_Min(const QString &newMaterialLength_Min)
{
    if (m_MaterialLength_Min == newMaterialLength_Min)
        return;
    m_MaterialLength_Min = newMaterialLength_Min;
    emit MaterialLength_MinChanged();
}

QString ModbusControl::ExtraShort_Max() const
{
    return m_ExtraShort_Max;
}

void ModbusControl::setExtraShort_Max(const QString &newExtraShort_Max)
{
    if (m_ExtraShort_Max == newExtraShort_Max)
        return;
    m_ExtraShort_Max = newExtraShort_Max;
    emit ExtraShort_MaxChanged();
}

QString ModbusControl::ExtraShort_Min() const
{
    return m_ExtraShort_Min;
}

void ModbusControl::setExtraShort_Min(const QString &newExtraShort_Min)
{
    if (m_ExtraShort_Min == newExtraShort_Min)
        return;
    m_ExtraShort_Min = newExtraShort_Min;
    emit ExtraShort_MinChanged();
}

QString ModbusControl::ExtraLong_Max() const
{
    return m_ExtraLong_Max;
}

void ModbusControl::setExtraLong_Max(const QString &newExtraLong_Max)
{
    if (m_ExtraLong_Max == newExtraLong_Max)
        return;
    m_ExtraLong_Max = newExtraLong_Max;
    emit ExtraLong_MaxChanged();
}

QString ModbusControl::ExtraLong_Min() const
{
    return m_ExtraLong_Min;
}

void ModbusControl::setExtraLong_Min(const QString &newExtraLong_Min)
{
    if (m_ExtraLong_Min == newExtraLong_Min)
        return;
    m_ExtraLong_Min = newExtraLong_Min;
    emit ExtraLong_MinChanged();
}

QString ModbusControl::Material_Worked_Count_1() const
{
    return m_Material_Worked_Count_1;
}

void ModbusControl::setMaterial_Worked_Count_1(const QString &newMaterial_Worked_Count_1)
{
    if (m_Material_Worked_Count_1 == newMaterial_Worked_Count_1)
        return;
    m_Material_Worked_Count_1 = newMaterial_Worked_Count_1;
    emit Material_Worked_Count_1Changed();
}

QString ModbusControl::Material_Worked_Count_2() const
{
    return m_Material_Worked_Count_2;
}

void ModbusControl::setMaterial_Worked_Count_2(const QString &newMaterial_Worked_Count_2)
{
    if (m_Material_Worked_Count_2 == newMaterial_Worked_Count_2)
        return;
    m_Material_Worked_Count_2 = newMaterial_Worked_Count_2;
    emit Material_Worked_Count_2Changed();
}

QString ModbusControl::Material_Worked_Count_3() const
{
    return m_Material_Worked_Count_3;
}

void ModbusControl::setMaterial_Worked_Count_3(const QString &newMaterial_Worked_Count_3)
{
    if (m_Material_Worked_Count_3 == newMaterial_Worked_Count_3)
        return;
    m_Material_Worked_Count_3 = newMaterial_Worked_Count_3;
    emit Material_Worked_Count_3Changed();
}

QString ModbusControl::Material_Worked_Count_4() const
{
    return m_Material_Worked_Count_4;
}

void ModbusControl::setMaterial_Worked_Count_4(const QString &newMaterial_Worked_Count_4)
{
    if (m_Material_Worked_Count_4 == newMaterial_Worked_Count_4)
        return;
    m_Material_Worked_Count_4 = newMaterial_Worked_Count_4;
    emit Material_Worked_Count_4Changed();
}

QString ModbusControl::Material_Worked_Count_5() const
{
    return m_Material_Worked_Count_5;
}

void ModbusControl::setMaterial_Worked_Count_5(const QString &newMaterial_Worked_Count_5)
{
    if (m_Material_Worked_Count_5 == newMaterial_Worked_Count_5)
        return;
    m_Material_Worked_Count_5 = newMaterial_Worked_Count_5;
    emit Material_Worked_Count_5Changed();
}

QString ModbusControl::Material_Worked_Count_6() const
{
    return m_Material_Worked_Count_6;
}

void ModbusControl::setMaterial_Worked_Count_6(const QString &newMaterial_Worked_Count_6)
{
    if (m_Material_Worked_Count_6 == newMaterial_Worked_Count_6)
        return;
    m_Material_Worked_Count_6 = newMaterial_Worked_Count_6;
    emit Material_Worked_Count_6Changed();
}

QString ModbusControl::Material_Worked_Count_7() const
{
    return m_Material_Worked_Count_7;
}

void ModbusControl::setMaterial_Worked_Count_7(const QString &newMaterial_Worked_Count_7)
{
    if (m_Material_Worked_Count_7 == newMaterial_Worked_Count_7)
        return;
    m_Material_Worked_Count_7 = newMaterial_Worked_Count_7;
    emit Material_Worked_Count_7Changed();
}

QString ModbusControl::Material_Worked_Count_8() const
{
    return m_Material_Worked_Count_8;
}

void ModbusControl::setMaterial_Worked_Count_8(const QString &newMaterial_Worked_Count_8)
{
    if (m_Material_Worked_Count_8 == newMaterial_Worked_Count_8)
        return;
    m_Material_Worked_Count_8 = newMaterial_Worked_Count_8;
    emit Material_Worked_Count_8Changed();
}

QString ModbusControl::Material_Worked_Count_9() const
{
    return m_Material_Worked_Count_9;
}

void ModbusControl::setMaterial_Worked_Count_9(const QString &newMaterial_Worked_Count_9)
{
    if (m_Material_Worked_Count_9 == newMaterial_Worked_Count_9)
        return;
    m_Material_Worked_Count_9 = newMaterial_Worked_Count_9;
    emit Material_Worked_Count_9Changed();
}

QString ModbusControl::Material_Worked_Count_10() const
{
    return m_Material_Worked_Count_10;
}

void ModbusControl::setMaterial_Worked_Count_10(const QString &newMaterial_Worked_Count_10)
{
    if (m_Material_Worked_Count_10 == newMaterial_Worked_Count_10)
        return;
    m_Material_Worked_Count_10 = newMaterial_Worked_Count_10;
    emit Material_Worked_Count_10Changed();
}

QString ModbusControl::Material_Worked_Count_11() const
{
    return m_Material_Worked_Count_11;
}

void ModbusControl::setMaterial_Worked_Count_11(const QString &newMaterial_Worked_Count_11)
{
    if (m_Material_Worked_Count_11 == newMaterial_Worked_Count_11)
        return;
    m_Material_Worked_Count_11 = newMaterial_Worked_Count_11;
    emit Material_Worked_Count_11Changed();
}

QString ModbusControl::Material_Worked_Count_12() const
{
    return m_Material_Worked_Count_12;
}

void ModbusControl::setMaterial_Worked_Count_12(const QString &newMaterial_Worked_Count_12)
{
    if (m_Material_Worked_Count_12 == newMaterial_Worked_Count_12)
        return;
    m_Material_Worked_Count_12 = newMaterial_Worked_Count_12;
    emit Material_Worked_Count_12Changed();
}

QString ModbusControl::Material_Worked_Count_13() const
{
    return m_Material_Worked_Count_13;
}

void ModbusControl::setMaterial_Worked_Count_13(const QString &newMaterial_Worked_Count_13)
{
    if (m_Material_Worked_Count_13 == newMaterial_Worked_Count_13)
        return;
    m_Material_Worked_Count_13 = newMaterial_Worked_Count_13;
    emit Material_Worked_Count_13Changed();
}

QString ModbusControl::Material_Worked_Count_14() const
{
    return m_Material_Worked_Count_14;
}

void ModbusControl::setMaterial_Worked_Count_14(const QString &newMaterial_Worked_Count_14)
{
    if (m_Material_Worked_Count_14 == newMaterial_Worked_Count_14)
        return;
    m_Material_Worked_Count_14 = newMaterial_Worked_Count_14;
    emit Material_Worked_Count_14Changed();
}

QString ModbusControl::Material_Worked_Count_15() const
{
    return m_Material_Worked_Count_15;
}

void ModbusControl::setMaterial_Worked_Count_15(const QString &newMaterial_Worked_Count_15)
{
    if (m_Material_Worked_Count_15 == newMaterial_Worked_Count_15)
        return;
    m_Material_Worked_Count_15 = newMaterial_Worked_Count_15;
    emit Material_Worked_Count_15Changed();
}

QString ModbusControl::Material_Worked_Count_16() const
{
    return m_Material_Worked_Count_16;
}

void ModbusControl::setMaterial_Worked_Count_16(const QString &newMaterial_Worked_Count_16)
{
    if (m_Material_Worked_Count_16 == newMaterial_Worked_Count_16)
        return;
    m_Material_Worked_Count_16 = newMaterial_Worked_Count_16;
    emit Material_Worked_Count_16Changed();
}

QString ModbusControl::Material_Worked_Count_17() const
{
    return m_Material_Worked_Count_17;
}

void ModbusControl::setMaterial_Worked_Count_17(const QString &newMaterial_Worked_Count_17)
{
    if (m_Material_Worked_Count_17 == newMaterial_Worked_Count_17)
        return;
    m_Material_Worked_Count_17 = newMaterial_Worked_Count_17;
    emit Material_Worked_Count_17Changed();
}

QString ModbusControl::Material_Worked_Count_18() const
{
    return m_Material_Worked_Count_18;
}

void ModbusControl::setMaterial_Worked_Count_18(const QString &newMaterial_Worked_Count_18)
{
    if (m_Material_Worked_Count_18 == newMaterial_Worked_Count_18)
        return;
    m_Material_Worked_Count_18 = newMaterial_Worked_Count_18;
    emit Material_Worked_Count_18Changed();
}

QString ModbusControl::Material_Worked_Count_19() const
{
    return m_Material_Worked_Count_19;
}

void ModbusControl::setMaterial_Worked_Count_19(const QString &newMaterial_Worked_Count_19)
{
    if (m_Material_Worked_Count_19 == newMaterial_Worked_Count_19)
        return;
    m_Material_Worked_Count_19 = newMaterial_Worked_Count_19;
    emit Material_Worked_Count_19Changed();
}

QString ModbusControl::Material_Worked_Count_20() const
{
    return m_Material_Worked_Count_20;
}

void ModbusControl::setMaterial_Worked_Count_20(const QString &newMaterial_Worked_Count_20)
{
    if (m_Material_Worked_Count_20 == newMaterial_Worked_Count_20)
        return;
    m_Material_Worked_Count_20 = newMaterial_Worked_Count_20;
    emit Material_Worked_Count_20Changed();
}

QString ModbusControl::Current_Local_Order() const
{
    return m_Current_Local_Order;
}

void ModbusControl::setCurrent_Local_Order(const QString &newCurrent_Local_Order)
{
    if (m_Current_Local_Order == newCurrent_Local_Order)
        return;
    m_Current_Local_Order = newCurrent_Local_Order;
    emit Current_Local_OrderChanged();
}

bool ModbusControl::Log_Flag() const
{
    return m_Log_Flag;
}

void ModbusControl::setLog_Flag(bool newLog_Flag)
{
    if (m_Log_Flag == newLog_Flag)
        return;
    m_Log_Flag = newLog_Flag;
    emit Log_FlagChanged();
}
